Android(安卓)ViewPager+Fragment多层嵌套(使用问题处理)
16lz
2021-01-26
之前写了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)方法
更多相关文章
- android菜单menu详解
- Android之Searchable
- android ListView显示网络图片
- android中多个activity用Intent跳转时,跳转后的activity显示白屏
- android 显示消息框的方法
- AsyncTask源码深入分析和巧记线程池
- AsyncTask使用以及源码分析
- Android源代码编译和运行常见错误解决方案
- Android(安卓)线程通信,初见