直接上代码:
private void initPagerView() {//初始化viewPager 和要添加的activity列表 Adapter 就是简单的PagerAdapter 这里就不贴了 viewPager = (ViewPager) findViewById(R.id.main_viewpager); viewPager.setOffscreenPageLimit(4); Intent intent = new Intent(getApplicationContext(), Activity1.class); View v1 = getView(mlistTag[0], intent); mlistview.add(v1); Intent intent2 = new Intent(getApplicationContext(), Activity2.class); View v2 = getView(mlistTag[1], intent2); mlistview.add(v2); Intent intent3 = new Intent(getApplicationContext(), Activity3.class); View v3 = getView(mlistTag[2], intent3); mlistview.add(v3); Intent intent4 = new Intent(getApplicationContext(), Activity4.class); View v4 = getView(mlistTag[3], intent4); mlistview.add(v4); viewPager.setAdapter(new ViewPagerAdapter(mlistview)); viewPager.setCurrentItem(0); viewPager.addOnPageChangeListener(onPageChangeListener); }
下面这段代码主要用于获取activity的界面View对象
/** * 通过activity获取视图 * * @param id tag标签,可随意设置但不要重复设置相同的 * @param intent * @return */ private View getView(String id, Intent intent) { return mactivityManager.startActivity(id, intent).getDecorView(); }
这样Activity就完美的嵌套进去了 不过还是有会一些小的问题
比如:监听back事件时 在哪个Activity里面监听。 这个问题 会先执行主Activity的onKeyDown方法 然后执行viewpager当前展示的activity里面的onKeyDown 但有时又不会执行当前展示的Activity里,(这个还没有弄明白,但是如果要在每一个子Activity执行操作就需要每一个子Activity里都监听okKeyDown);
第一次写博客 有啥不对的欢迎指正 谢谢