笔记:fragment重复加载和fragment在viewpage中预加载的问题
来源:互联网 发布:java断点调试快捷键 编辑:程序博客网 时间:2024/06/05 04:42
场景:
viewpage中嵌套fragment来回切换时,fragment每次都会执行oncreate()方法重新加载;
因为viewpage有预加载的机制,在fragment还未显示时,就会提前加载
解决方案
-重复加载问题:
- 在fragment的onCreateView()方法中判断是否已经创建:
if (fragmentView == null) { fragmentView = inflater.inflate( R.layout.fragment_layout, container, false); initData(); }ViewGroup parent = (ViewGroup) fragmentView.getParent(); if (parent != null) { parent.removeView(fragmentView); } return fragmentView;
-预加载问题:
- 根据当前fragment的UI是否显示来判断是否加载数据,使用setUserVisibleHint()方法,fragment可 见时才进行数据加载操作,即Fragment的懒加载。但是此方法会先与onCreateView()方法执行,因此在视图未初始化的时候做处理,会有空指针的异常。结合上面避免重复加载的方法,当已经有初始化的数据时data != null,说明已经初始化视图,可以加载数据
@Overridepublic void setUserVisibleHint(boolean isVisibleToUser) { super.setUserVisibleHint(isVisibleToUser); if (getUserVisibleHint() && data != null) { } else { }}
0 0
- 笔记:fragment重复加载和fragment在viewpage中预加载的问题
- FragmentTabHost+Fragment+Viewpage遇到的Fragment重复加载问题
- 记录ViewPage+Fragment嵌套ViewPage+Fragment滑动时内部嵌套卡顿的问题和实现Fragment的懒加载
- Android中ViewPage+Fragment的预加载的取消
- Viewpage + fragment 防止预加载
- viewpage+fragment禁止预加载
- ViewPage+Fragment取消预加载
- ViewPage加载fragment
- 使用viewpage加载fragment
- ViewPage Fragment 懒加载
- 同一个Fragment重复加载的问题
- Fragment解决重复加载的问题
- Fragment解决重复加载的问题
- fragment+viewpage设置不预加载页面
- Android之取消ViewPage+Fragment的预加载
- Android之取消ViewPage+Fragment的预加载
- Android之取消ViewPage+Fragment的预加载
- Android之取消ViewPage+Fragment的预加载
- [NOIP2004]虫食算 T4 简单搜索+剪枝
- row_number() over(partition by '分组' order by '日期')
- Android 框架炼成 教你如何写组件间通信框架EventBus
- 完全理解Gson
- android学习路线图
- 笔记:fragment重复加载和fragment在viewpage中预加载的问题
- 《暗时间》读书笔记及读后感
- oracle中varchar,varchar2,nvarchar,nvarchar2有什么区别
- 4、Ajax与Java交互的案例
- 欢迎使用CSDN-markdown编辑器
- 设计模式学习笔记--备忘录模式
- Java线程专栏文章汇总
- 数字媒体技术专业与影视特效的发展和联系
- spring-data-jpa 中,如果使用了one-to-many , many-to-one的注释,会在Jackson进行json字符串化的时候出现错误