之前写了Android ViewPager+Fragment(使用问题处理),封装了一个BaseFragment,对于简单使用ViewPager+Fragment而言,是没有问题的。

不过,ViewPager包含多个fragment,而且fragment使用viewpager再次包含fragment,最顶层viewpager切换fragment,fragment内ViewPager中fragment无法检测是否显示或隐藏(setUserVisibleHint(boolean isVisibleToUser)、onHiddenChanged(boolean hidden)、onResume()和onPause()不执行)

解决方法:修改BaseFragment,给onResumeVisible()添加个标识,用于判断是onResume()还是setUserVisibleHint()导致执行onResumeVisible()方法;onPauseInVisible()同理。

在顶层Fragment重载onResumeVisible(tag),onPauseInVisible(tag),根据tag过滤掉activity显示或隐藏导致fragment执行onResume()或onPause(), 再让当前显示的fragment执行onResumeVisible(tag)或onPauseInVisible(tag)方法

更多相关文章

  1. android菜单menu详解
  2. Android之Searchable
  3. android ListView显示网络图片
  4. android中多个activity用Intent跳转时,跳转后的activity显示白屏
  5. android 显示消息框的方法
  6. AsyncTask源码深入分析和巧记线程池
  7. AsyncTask使用以及源码分析
  8. Android源代码编译和运行常见错误解决方案
  9. Android(安卓)线程通信,初见

随机推荐

  1. 【Android-002】【常见布局】
  2. Android Edittext焦点处理;
  3. Android超链接去下划线--Android学习笔记
  4. Android学习笔记(9)——ListView简介
  5. 浅析Android(安卓)的 MediaPlayer类
  6. moodle手机版在android平台上的安装配置
  7. 安装Android时Could not find D:\Androi
  8. android重启
  9. Android开发布局系列: LinearLayout布局实
  10. 图解Android - Android GUI 系统 (1) -