• 【android】实现手指滑动来切换activity(转)


    MainActivity.java外部引用 原始文档
     1
     2
     3
     4
     5
     6
     7
     8
     9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    package misc.demo;
    
    import java.util.ArrayList;
    
    import android.app.ActivityGroup;
    import android.content.Intent;
    import android.os.Bundle;
    import android.support.v4.view.PagerAdapter;
    import android.support.v4.view.ViewPager;
    import android.view.View;
    import android.view.Window;
    
    public class MainActivity extends ActivityGroup {
    	private View oneView;
    	private View twoView;
    	private View threeView;
    	private ArrayList<View> views;
    	private ViewPager mViewPager;//多页面滑动切换效果
    	
    	/** Called when the activity is first created. */
    	@Override
    	public void onCreate(Bundle savedInstanceState) {
    		super.onCreate(savedInstanceState);
    		requestWindowFeature(Window.FEATURE_NO_TITLE);
    		setContentView(R.layout.main);
    		views = new ArrayList<View>();
    		mViewPager = (ViewPager)findViewById(R.id.main_viewpager);        
    	    mViewPager.setOnPageChangeListener(null);
    		initView();
    		addViews();
    		
    		PagerAdapter mPagerAdapter = new PagerAdapter() {
    			
    			@Override
    			public boolean isViewFromObject(View arg0, Object arg1) {
    				return arg0 == arg1;
    			}
    			
    			@Override
    			public int getCount() {
    				return views.size();
    			}
    			
    			@Override
    			public void destroyItem(View container, int position, Object object) {
    				((ViewPager)container).removeView(views.get(position));
    			}
    			
    			@Override
    			public Object instantiateItem(View container, int position) {
    				((ViewPager)container).addView(views.get(position));
    				return views.get(position);
    			}
    		};
    		
    		mViewPager.setAdapter(mPagerAdapter);
    	}
    
    	/**
    	 * 将相应的Activity转换成View对象
    	 */
    	public void initView(){
    		oneView=getViews(OneActivity.class,"one");
    		twoView=getViews(TwoActivity.class,"one");
    		threeView=getViews(ThreeActivity.class,"one");
    	}
    
    	/**
    	 * 将转换成View后的Activity添加到列表中
    	 */
    	public void addViews(){
    		
    		views.add(oneView);
    		views.add(twoView);
    		views.add(threeView);
    	}
    	/**
    	 * 获取要跳转的Activity对应的View
    	 * @param cls目的Activity
    	 * @param pageid目的Activity的唯一id
    	 * @return 返回一个View类型的变量
    	 */
    	public View getViews(Class<?> cls,String pageid){
    		return getLocalActivityManager().startActivity(pageid, new Intent(MainActivity.this,cls).addFlags(Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT)).getDecorView();
    	}
    }
  • 相关阅读:
    自然语言处理3.4——使用正则表达式检测词组搭配
    自然语言处理3.3——使用Unicode进行文字处理
    自然语言处理3.1——从网络和硬盘访问文本
    自然语言处理2.3——词典资源
    自然语言处理2.2——条件频率分布
    自然语言处理——NLTK中文语料库语料库
    自然语言处理2.1——NLTK文本语料库
    【转载】使用LFM(Latent factor model)隐语义模型进行Top-N推荐
    Ajax (jquery)实现智能提示搜索框(in Django)
    python操作mysql数据库
  • 原文地址:https://www.cnblogs.com/pen-ink/p/3386061.html
Copyright © 2020-2023  润新知