android Tabhost部件(四)--其他类似TabHost实现
2015-07-09 14:12
597 查看
http://blog.csdn.net/yangyu20121224/article/category/1431917/1
FragmentTabHost切换Fragment时避免UI重新加载
用FragmentTabHost + Fragment 可以实现微博底栏菜单,看图:
不过,初次实现时发现有个缺陷,每次FragmentTabHost切换fragment时会调用onCreateView()重绘UI。
解决方法,在fragment onCreateView 里缓存View:
Java代码
private View rootView;// 缓存Fragment view
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
Log.i(TAG, "onCreateView");
if (rootView == null)
{
rootView = inflater.inflate(R.layout.fragment_1, null);
}
// 缓存的rootView需要判断是否已经被加过parent,如果有parent需要从parent删除,要不然会发生这个rootview已经有parent的错误。
ViewGroup parent = (ViewGroup) rootView.getParent();
if (parent != null)
{
parent.removeView(rootView);
}
return rootView;
}
Android重写FragmentTabHost来实现状态保存
/article/1625272.html
http://blog.csdn.net/yangyu20121224/article/category/1431917/1
FragmentTabHost切换Fragment时避免UI重新加载
用FragmentTabHost + Fragment 可以实现微博底栏菜单,看图:
不过,初次实现时发现有个缺陷,每次FragmentTabHost切换fragment时会调用onCreateView()重绘UI。
解决方法,在fragment onCreateView 里缓存View:
Java代码
private View rootView;// 缓存Fragment view
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState)
{
Log.i(TAG, "onCreateView");
if (rootView == null)
{
rootView = inflater.inflate(R.layout.fragment_1, null);
}
// 缓存的rootView需要判断是否已经被加过parent,如果有parent需要从parent删除,要不然会发生这个rootview已经有parent的错误。
ViewGroup parent = (ViewGroup) rootView.getParent();
if (parent != null)
{
parent.removeView(rootView);
}
return rootView;
}
Android重写FragmentTabHost来实现状态保存
/article/1625272.html
相关文章推荐
- Android Studio将module打包成.jar包
- Android Bitmap基本介绍
- AndroidStudio导入libary源码
- 关于android屏幕适配的问题(drawable-xxxxxxxx,dp,sp,px等等),偶尔看到了android源码,关于dpi的区分的值
- AndroidManifest.xml——permission-tree
- Android中改变一个图片的透明度
- 使Android 自带SDK 完美支持HTML5 之 html5webview
- AndroidManifest.xml——permission-group
- Android小软件看知乎收藏夹
- Android学习
- Android 常用开发工具以及Mac常用软件
- Android事件分发机制和一些疑问
- Android Studio 学习笔记-新手入门-(2)导入项目遇到的问题
- 【第二篇】学习 android 事件总线androidEventbus之异步事件的传递
- smack on android SSL设置记录之学习用keytool生成证书
- Android布局大全
- 四种android:LanchMde模式
- Android Action Bar 详解篇
- Android Studio 修改包名最便捷做法
- android provision apk 分析