将ViewPager中内嵌的ViewPager设置一个setOnTouchListener事件,记录是否被触摸状态

viewPaper.setOnTouchListener(new OnTouchListener() {@Overridepublic boolean onTouch(View v, MotionEvent event) {int action = event.getAction();if (MotionEvent.ACTION_DOWN == action) {isTouch = true;} else if (MotionEvent.ACTION_OUTSIDE == action|| action == MotionEvent.ACTION_UP) {isTouch = false;}return false;}});

覆盖dispatchTouchEvent分配两个ViewPager的触摸事件。

 @Overridepublic boolean dispatchTouchEvent(MotionEvent ev) {if (mainViewFragment.isTouch()) {ViewPager viewPaper = mainViewFragment.getViewPaper();return viewPaper.dispatchTouchEvent(ev);}return super.dispatchTouchEvent(ev);}

使用Fragment适配器,需要继承FragmentActivity类。

     viewsAdapter = new FragmentViewsAdapter(getSupportFragmentManager());mPager.setAdapter(viewsAdapter);

下面适配器代码中的fragList是一个ArrayList<Fragment>集合,将集合中的Fragment作为一个页面来显示在ViewPager中。

static class FragmentViewsAdapter extends FragmentPagerAdapter {public FragmentViewsAdapter(FragmentManager fm) {super(fm);}@Overridepublic int getCount() {return fragList.size();}@Overridepublic Fragment getItem(int position) {return fragList.get(position);}}

创建一个类继承Fragment类,需要覆盖onCreateView方法。

@Overridepublic View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) {layout = inflater.inflate(R.layout.main_view, null);return layout;}

源码地址:http://download.csdn.net/detail/aaren_jiang/5207881

作者:黑卡米       原文地址:http://blog.csdn.net/aaren_jiang/article/details/8743517

ViewPager中ViewPager的使用相关推荐

  1. 友盟页面统计 - 关于Viewpager中的Fragment的生命周期

    Activity和Fragment各自理论上的生命周期 Activity的生命周期是较为经典也最清晰的,在此不表: Fragment从出现到广泛运用也有一段时间了,其标准生命周期也仅比Activity ...

  2. android 弹出fragment,Android中ViewPager获取当前显示的Fragment

    前言 在项目中,有时会用到在ViewPager中显示同样类型的Fragment,同时这样的Fragment的个数是动态的,但是PagerAdapter没有给我们提供getCurrentFragment ...

  3. viewpager初始化fragment没有绘制_Fragment在ViewPager中的正确应用(3)FragmentStatePagerAdapter优化了什么...

    前言 Fragment在ViewPager中的正确应用(2)内存泄漏?内存溢出 错误终结者:Fragment在ViewPager中的正确应用 OK,填坑篇的文章来了. 当我打开官方文档准备开始了解Fr ...

  4. ViewPager中Fragment的生命周期和FragmentPageAdapter与FragmentStatePageAdapter对其的影响

    首先,我们创建一个Activity和一个Fragment,并在Fragment的各个生命周期打好日志,并把Fragments丢进Viewpager,这里我们往Viewpager里丢了3个Fragmen ...

  5. ViewPager相互嵌套,导致子ViewPager无法滑动,且子ViewPager中的view无法被点击

        场景:当使用ViewPager进行嵌套的时候,子viewPager是无法进行嵌套的,因此我们要重写ViewPager类,并重写里层viewPager类中的onTouchEvent方法,调用其父 ...

  6. android viewpager动态加载页面,Android viewpager中动态添加view并实现伪无限循环的方法...

    本文实例讲述了Android viewpager中动态添加view并实现伪无限循环的方法.分享给大家供大家参考,具体如下: viewpager的使用,大家都熟悉,它可以实现页面之间左右滑动的切换,这里 ...

  7. Viewpager中改变PagerTabStrip的颜色(背景色,指示条颜色,文字颜色)

    Viewpager中改变PagerTabStrip的颜色(背景色,指示条颜色,文字颜色) 效果图: 改变指示条颜色: pagerTabStrip为PagerTabStrip的实例: pagerTabS ...

  8. TabLayout让Fragment在ViewPager中的滑动切换更优雅

    TabLayout让Fragment在ViewPager中的滑动切换更优雅 转载于:https://www.cnblogs.com/zhujiabin/p/7382500.html

  9. android之tab分页标签的实现方法,Android应用中使用ViewPager和ViewPager指示器来制作Tab标签...

    一.ViewPageIndicator开源框架的基本用法我们先得去Github上面下载这个库,下载地址:https://github.com/JakeWharton/Android-ViewPager ...

最新文章

  1. sql文本编辑器_专业文本编辑工具
  2. 【脑电信号分类】脑电信号提取PSD功率谱密度特征
  3. C++实现插入排序算法
  4. 第4章 Python 数字图像处理(DIP) - 频率域滤波2 - 复数、傅里叶级数、连续单变量函数的傅里叶变换、卷积
  5. unubtu16.04解决etc文件误改导致无法使用sudo等指令问题
  6. android toast_Android Toast
  7. python series拼接_pandas数据拼接的实现示例
  8. 23种设计模式总结+清晰图解(必收藏)
  9. 收集的Word2007技巧大全
  10. 【深度相机系列二】深度相机原理揭秘--飞行时间(TOF)
  11. java.sql字符串拼成日期_sql字符串转换成日期
  12. 三星Galaxy S21系列5G手机竟成了《天赐的声音》舞台上最亮的星?
  13. 提高团队成员的工作积极性/团队凝聚力
  14. 程序员工资的7个段位,你的工资在哪个Level?
  15. Ubuntu Linux 安装 GCC Compiler
  16. 【读书笔记】《秘书工作手记——学会办事》
  17. 解决git拉取代码时报:Auto packing the repository in background for optimum performance
  18. 简单回顾下过去这一年的工作
  19. onActivityResult被标注过时了,新API的写法
  20. 【RISC-V】Hifive1开发板在Arduino IDE中的配置方法

热门文章

  1. Python+uiautomator2指定区域截图
  2. @Caching,@Cacheable,@CachePut的使用
  3. AspectJ的Execution表达式
  4. 使用PS切图时,调整标尺单位
  5. Linux命令中特殊符号
  6. Matlab中传递函数的几种输入方式
  7. 使用HTML写一个完整的注册页面
  8. extern 详细用法
  9. photoshop制作白发教程:可爱女孩黑发变白发
  10. 非诚勿扰24灯全灭php,收二手货小伙上非诚勿扰,24盏灯全灭还遭羞辱,最后才知道是收二手豪车身价上亿...