Android中ViewPgae中的Fragment如何确认当前页面可见的问题
来源:互联网 发布:郑州软件技术培训学校 编辑:程序博客网 时间:2024/06/06 00:52
由于在ViewPage中PageAdapter来管理所有的Fragment。在加载一个Fragment的时候,会自动缓存左右几个(默认是一个)页面,此时也会调用到正常的生命周期函数,onCreate,onCrateView,onResume.可是这样就干扰了我们统计页面打开次数。
例如:一个ViewPager中存在三个页面的时候,当默认是第一个页面,并且被打开。那么在我们的后台就会收集到用户打开两个页面的信息。这个对我们的统计就是一个很大的干扰。所以就不能再将统计代码放在onResume中,要放在一个其他的函数内,但问题的关键是如何确认当前的Fragment可见?这样我才能把统计函数移植过去。同时Fragment虽然有onResume和onPause的,但是这两个方法是Activity的方法,调用时机也是与Activity相同,和ViewPager搭配使用这个方法就很鸡肋了,根本不是你想要的效果,这里介绍一种方法。
在问这个问题的时候把焦点都放在生命周期的触发上了。发现Fragment下专门有一个setUserVisibleHint函数来处理这个事情:
@Override public void setUserVisibleHint(boolean isVisibleToUser) { super.setUserVisibleHint(isVisibleToUser); if (isVisibleToUser) { //相当于Fragment的onResume } else { //相当于Fragment的onPause } }
这样我把统计代码放置在当isVisibleToUser是可见的时候判断分支中,应该可以解决我的问题了。
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- 如何判断当前的Fragment是否可见?Fragment的可见与不可见的判断方法。
- Android-Fragment 中 嵌套 ViewPager 结构,ViewPager 中的Fragment再次可见的时候 出现空白
- Android Viewpager中Fragment可见的标志
- 判断当前ViewPager中Fragment是否可见
- FLEX中如何获取当前页面的URL的问题
- 如何快速定位当前的Activity和Fragment页面?
- ViewPager中fragment是否可见---android实用技巧
- android-判断当前Fragment是否可见(Visible)
- android-判断当前Fragment是否可见(Visible)
- 判断当前fragment是否可见
- 关于fragment到底是否可见的问题
- Android基础--浅谈Fragment的状态可见与不可见
- 【Java并发编程】之七:使用synchronized获取互斥锁的几点说明
- ubuntu 错误
- Python CSV文件处理/读写
- GSL-蒙特卡洛积分
- 龙格-库塔法 wiki
- Android中ViewPgae中的Fragment如何确认当前页面可见的问题
- oracle网络配置
- Oracle EBS OAF(ADF) VO(View Object)开发中的绑定方式(Binding Style)的介绍
- VMware Network Adapter VMnet1和VMnet8 未识别的网络的解决方法
- 经典四阶龙格库塔法
- 康托展开与逆展开
- POJ3664
- 中东部还是阴霾得很严重呀
- Matlab中龙格-库塔(Runge-Kutta)方法原理及实现