关于viewpager与fragment需要刷新数据的bug,解决办法。
来源:互联网 发布:js url encode 中文 编辑:程序博客网 时间:2024/05/17 04:51
首先要解析两个问题,第一:在 Fragment 中,使用 getArguments() 来取得参数。这是常用的参数传递方式。这种数据传递方式只可能用一次,在 Fragment 被添加到 FragmentManager 后,所以会造成,就算我们把fragment释放掉,在viewpager里面,fragment获取到的bundle,仍然是第一次保存的数据,因此参数传递,在继承的 Fragment 子类中,新增几个 setter,getter然后通过这些 setter 将数据传递过去。同时提醒一下这些 setter 方法中不要操作那些 View,这些 View 只有在 onCreateView() 事件后才可以操作。第二:FragmentPagerAdapter 继承自 PagerAdapter,该类内的每一个生成的 Fragment 都将保存在内存之中,因此适用于那些相对静态的页,数量也比较少的那种;FragmentStatePagerAdapter 继承自 PagerAdapter, 当页面离开视线后,就会被消除,释放其资源;而在页面需要显示时,生成新的页面(就像 ListView 的实现一样)。这么实现的好处就是当拥有大量的页面时,不必在内存中占用大量的内存。所以不用 FragmentPagerAdapter,而改用 FragmentStatePagerAdapter,并且重载 getItemPosition() 并返回 POSITION_NONE,以触发销毁对象以及重建对象。
阅读全文
0 0
- 关于viewpager与fragment需要刷新数据的bug,解决办法。
- android Viewpager中fragment的数据刷新
- viewPager嵌套fragment的数据刷新
- ViewPager挂载Fragment刷新Fragment数据
- Android 中 ViewPager+Fragment关于fragment的数据更新
- Android ViewPager刷新Fragment数据(ViewPager获取Fragment对象)
- Android ViewPager刷新Fragment数据(ViewPager获取Fragment对象)
- 关于PopupWindow中无法嵌套viewpager+Fragment的解决办法!
- fragment嵌套viewpager viewpager嵌套fragment 的bug
- 关于viewpager里Fragment嵌套Fragment的一些列bug解决
- 关于viewpager与fragment连用
- viewpager与fragment使用时刷新问题
- 关于Fragment数据不刷新
- 关于activity被重启后viewpager的数据不刷新的问题
- ListView嵌套ViewPager+Fragment引起的Bug
- 关于fragment+viewpager的优化
- 关于fragment、ActionBar与ViewPager的一些总结
- 关于Fragment与ViewPager交互遇到的问题
- java调用WebService接口的几种方法
- C++中的基础相关知识之预处理,const,sizeof
- 桌面应用程序与web应用程序
- MyEclipse WebSphere开发教程:安装和更新WebSphere 6.1, JAX-WS, EJB 3.0(四)
- 矩阵权(Matrix weighted)Bezier三角(曲面)片
- 关于viewpager与fragment需要刷新数据的bug,解决办法。
- 苹果APP定制开发
- TensorFlow学习--图graph/会话Session
- Ubuntu 16.04 几个国内更新源
- IPv6 地址类型
- [Asp.net]引用System.Data.OraclieClient.dll
- 人生选择点的思考
- lambda表达式
- 大深坑