使用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);
}
//缓存的rootView需要判断是否已经被加过parent, 如果有parent需要从parent删除,要不然会发生这个rootview已经有parent的错误。
        ViewGroup parent = (ViewGroup) rootView.getParent();
        if (parent != null) {
            parent.removeView(rootView);
        }
return rootView;
}

最新文章

  1. 抓包工具fiddler
  2. HDU 1026 Ignatius and the Princess I(带路径的BFS)
  3. [转]iOS代码块Block
  4. 【C-循环结构】
  5. objective-c 遍历文件夹查看文件
  6. Working with Data » Getting started with ASP.NET Core and Entity Framework Core using Visual Studio » 创建复杂数据模型
  7. 删除特定影响因素(字段列)下的重复记录(MySQL)
  8. Runtime - 01
  9. 请教如何实现UITextField值变化的实时监视
  10. JS知识点概况
  11. partial 的好处
  12. 企业架构研究总结(27)——TOGAF架构开发方法(ADM)之架构变更管理阶段
  13. 开心的金明 NOIP 2006 普及组
  14. JAVA进阶4
  15. 在SQL注入中利用MySQL隐形的类型转换绕过WAF检测
  16. 解决mysql使用GTID主从复制错误问题
  17. [svc]tomcat配置文件详解-最简单的基于mvn的war包
  18. Android 使用正则表达式验证身份证号是否符合规则
  19. ASP.NET学习笔记(6)——jQuery的Ajax基本操作
  20. 转 微软Sysinternals Suite工具13年12月版下载

热门文章

  1. Numpy 基础运算1
  2. 更换MariaDB数据库
  3. CentOS7上Docker简单安装及nginx部署
  4. 动态规划-LIS1
  5. ARouter基础使用(一)
  6. 编写输出“Hello world”
  7. 与JMeter的第一次亲密接触
  8. [python] python django web 开发 —— 15分钟送到会用(只能送你到这了)
  9. NP-Completeness理解
  10. js发送post请求,实现下载文件