切换Fragment时避免重复加载UI
来源:互联网 发布:好学近乎知 pdf 编辑:程序博客网 时间:2024/06/14 00:33
使用FragmentTabHost时,Fragment之间切换时每次都会调用onCreateView方法,导致每次Fragment的布局都重绘,无法保持Fragment原有状态。
解决办法:在Fragment onCreateView方法中缓存View
- private View rootView;//缓存Fragment view
- @Override
- public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
- if(rootView==null){
- rootView=inflater.inflate(R.layout.tab_fragment, null);
- initView(rootView);
- }
- //缓存的rootView需要判断是否已经被加过parent, 如果有parent需要从parent删除,要不然会发生这个rootview已经有parent的错误。
- ViewGroup parent = (ViewGroup) rootView.getParent();
- if (parent != null) {
- parent.removeView(rootView);
- }
- return rootView;
- }
0 0
- 切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTab切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- 如何避免FragmentTabHost切换Fragment时重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- FragmentTabHost切换Fragment时避免重复加载UI
- php 可变变量 (variable variables)
- QML行编辑器TextField
- cocos2d-x避免手动修改android.mk文件来编译
- 无知记事本(android版)
- Single Number(异或的性质及运用)
- 切换Fragment时避免重复加载UI
- js中, apply方法简单理解(实现回调函数及参数传递)
- 【J2EE】:MVC模式的简介与分析
- Windows下Eclipse导入android系统源码
- 无线通信设计秘密四:唤醒下发算法
- JQuery随心笔记----jquery操作select
- QML中的TextEdit和TextArea的区别
- How to send patch to Linux upstream
- xml中的特殊符号