转载请注明出处:http://blog.csdn.net/djy1992/article/details/46674169

@author dujinyang

难得有时间上来写博客。

fragment虽然好用,但个人还是觉得有利有弊。

网上大都说切换状态,有挺多问题,

有很多种解决方案。

第一种常常遇到的情况:

if(rootView == null)
rootView = inflater.inflate(R.layout.fragment_home, container,false);
ViewGroup parent = (ViewGroup) rootView.getParent();
if (parent != null)
parent.removeView(rootView);
initView(rootView); return rootView;

第二种是LISTVIEW:

同样的道理,在listview的适配器里面,

	@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view=convertView;
if(view==null)
{
view=new TextView(getActivity().getApplicationContext());
}
((TextView)view).setText("这是第"+position+"条测试数据");
((TextView)view).setTextSize(20);
return view;
}

第三种估计比较少人遇到:

折腾了一下午,因为需求关系,需要在TAB第一选项里面加入 ViewPager+Tabhost +动画,

其实搞了很久才发现,原来是动画那一层,没有保存,但是因为是图片的原因,又无法保存位置,

测试了很久解决了。

OnPageChangeListener里面
重写的onPageSelected,switch的选择器里动画层输出由它自带arg0的,
为每一个tab增加多一个自身选项,作为位置保存,不能在外层记录位置,因为会出BUG的。
通过每一个tab的位置计算出来原来所在的位置,这样就可以解决滑动时产生的位置信息。
希望对大家有用。如果有其它的疑难杂症,可留言或加我Q。

转载请注明出处:http://blog.csdn.net/djy1992/article/details/46674169

android fragment+ FragmentTabHost+viewpager 切换状态不保存的问题的更多相关文章

  1. [Android]Fragment源代码分析(二) 状态

    我们上一讲,抛出来一个问题,就是当Activity的onCreateView的时候,是怎样构造Fragment中的View參数.要回答这个问题我们先要了解Fragment的状态,这是Fragment管 ...

  2. Android重写FragmentTabHost来实现状态保存

    近期要做一个类似QQ底部有气泡的功能,试了几个方案不太好.我想非常多开发人员使用TabHost都会知道它不保存状态.每次都要又一次载入布局.为了保存状态,使用RadioGroup来实现.状态是能够保存 ...

  3. Android使用Fragment来实现ViewPager的功能(解决切换Fragment状态不保存)以及各个Fragment之间的通信

    以下内容为原创,转载请注明:http://www.cnblogs.com/tiantianbyconan/p/3364728.html 我前两天写过一篇博客<Android使用Fragment来 ...

  4. Android之ActionBar、Tabs、Fragment、ViewPager实现标签页切换并缓存页面

    感觉 Android 到处都是坑,每个地方都要把人折腾半天. 今天来简单说说 Android之ActionBar.Tabs.Fragment.ViewPager 实现标签页切换并缓存页面 关于他们的介 ...

  5. Android控件使用FragmentTabHost,切换Fragment;

    大部分APP的主界面都很类似,要么底部导航的,要么就是侧滑菜单,还有底部导航+侧滑菜单的:底部导航实现大概有几种方式: TabHost+Fragment RadioGroup+Fragment Fra ...

  6. Android Fragment使用(三) Activity, Fragment, WebView的状态保存和恢复

    Android中的状态保存和恢复 Android中的状态保存和恢复, 包括Activity和Fragment以及其中View的状态处理. Activity的状态除了其中的View和Fragment的状 ...

  7. 保存和恢复 Android Fragment 的状态

    经过几年在 Android 应用开发中应用 Fragment 的努力之后,我必须要说尽管Fragment的概念非常优秀,但是它也同时带来了一堆问题.当我们处理实例的状态保存时就需要特别一件一件地修护好 ...

  8. Android - FragmentTabHost 与 Fragment 制作页面切换效果

    使用 FragmentTabHost 与 Fragment 制作页面切换效果 API 19 TabHost已经不建议使用了.用 FragmentTabHost 来代替TabHost.实际上 Fragm ...

  9. Android中Fragment和ViewPager那点事儿(仿微信APP)

    在之前的博文<Android中使用ViewPager实现屏幕页面切换和引导页效果实现>和<Android中Fragment的两种创建方式>以及<Android中Fragm ...

随机推荐

  1. 【摘自网络】陈奕迅&&杨千嬅

    揭陈奕迅杨千嬅相爱18年恋人未满的点滴片段 文/一床情书 但凡未得到,但凡是过去,总是最登对 ——题记 已经仙逝多年的香港歌坛天后梅艳芳曾经在<似是故人来>里唱道:“但凡未得到,但凡是过去 ...

  2. HBase的数据迁移(含HDFS的数据迁移)

    1.启动两个HDFS集群 hadoop0,hadoop1,都是伪分布式的集群 2.启动hadoop3的zookeeper与hbase 注意点:需要开启yarn服务,因为distcp需要yarn. 3. ...

  3. Win7+VS2005编译Qt4.7.3+phonon(需要安装新版本Windows SDK)

    Qt官网上下载的源代码在编译时并没有将phonon继承进去,只提供了源代码,而在Win7+VS2005中编译phonon时遇到不少的问题,因为phonon只是一个前端程序,要使用其实现多媒体的播放还需 ...

  4. 【Android开发学习笔记】【第二课】Activity学习

    什么是Activity,就是我们所看到的 需要理解以下四句话: 1.一个Activity就是一个类,并且这个类需要集成Activity: 2.需要重写OnCreat方法 3.每个Activity都需要 ...

  5. 【C++】字符串的大小写转换

    #include<string> #include<algorithm> #include<iostream> using namespace std; int m ...

  6. ant 执行到javac时运行中止,怎么办?

    今天下午我用ant,明明都能打出target.后来改了点代码就不行了,执行到compile的javac时运行中止,真是见鬼了. 在ant构建文件上右击,点击"run as"-> ...

  7. http请求及模拟浏览器发送http请求

    /**    *测试新增图片   * @throws IOException    * @throws HttpException    * @throws SAXException    * @th ...

  8. sqlserver多表连接更新

    一.MS SQL Server 多表关联更新 sql server提供了update的from 子句,可以将要更新的表与其它的数据源连接起来.虽然只能对一个表进行更新,但是通过将要更新的表与其它的数据 ...

  9. tag标签调取

    {dede:tag row='10' sort='new' getall='1'}                                <li> <a href='[fie ...

  10. PetaPoco模糊查询

    like '@0'  是错的,应该换成这样 like @0,原因是petapoco会自动把代码解析成'你好' 标签: Sql command = new Sql();command.Append(&q ...