ViewPager.setCurrentItem()出现Fragment already active异常
来源:互联网 发布:java创建索引lucene 编辑:程序博客网 时间:2024/05/17 02:51
公司一项目,从一个activity进入另一个activity并快速切换viewpager的时候,有一定几率出现 E/AndroidRuntime(12408): Caused by: java.lang.IllegalStateException: Fragment already active,app直接挂掉,说是在ViewPager.setCurrentItem()处出现错误。
我在网上看了半天,也没有解决,看到了几篇关于Fragment already active异常的文章,放上链接,你们也可以参考一下:
http://stackoverflow.com/questions/10364478/got-exception-fragment-already-active/15084683
http://blog.csdn.net/gaojiaxingde/article/details/39002501
由于我的项目过大,不太好改动,我就研究了好一会儿,我就添加了下面的代码:
<span style="font-size:18px;"> try { mViewPager.setCurrentItem(mCurrentIndex);} catch (Exception e) {e.printStackTrace();WLog.e(TAG, "Fragment already active");}</span>
结果这样app就不会ANR了,打印的出来的异常为 E/FragmentManager(6610): Fragment FragmentChannelNewsList{430903a8} is not currently in the FragmentManager ,我想应该是viewpager切换速度太快了,导致Fragment还没有初始化完成,这时候就ANR,贴出来大家一起看看,Fragment already active异常还没有看到很好的解决办法,大家有好的办法出来讨论一下,共同进步!!!
经过我后来查看代码,发现是Activity退出来的时候没有来得及clear掉存储Fragment的HashMap造成的,只要我们每次进入Activity在setContentView之前clear一下这个HashMap就可以了!!!
- ViewPager.setCurrentItem()出现Fragment already active异常
- setArguments 出现fragment already active异常
- fragment already active异常的解决
- 异常:java.lang.IllegalStateException: Fragment already active
- 异常:java.lang.IllegalStateException: Fragment already active
- 使用Fragment时出现 java.lang.IllegalStateException: Fragment already active
- Android运行异常二:java.lang.IllegalStateException: Fragment already active
- 解决Fragment already active方法
- 解析 IllegalStateException--"Fragment already active"
- ViewPager调用setCurrentItem(position)时,跳转Fragment 问题
- android fragment报Fragment already active
- ViewPager的setCurrentItem数值过大导致ANR异常
- java.lang.IllegalStateException: Fragment already active
- java.lang.IllegalStateException: Fragment already active
- java.lang.IllegalStateException: Fragment already active
- android ViewPager+Fragment ILLegalStateException Fragment Already added
- 解决ViewPager setCurrentItem 时闪太快
- java.lang.IllegalStateException: Fragment already active,Fragment.setArguments()问题
- dateFromString 函数造成时间差问题
- JAVA中mark()和reset()用法
- linux下vi编辑器常用命令
- 改变view的大小
- thrift0.93 windows下编译总结篇
- ViewPager.setCurrentItem()出现Fragment already active异常
- AngularJS入门实例2——控制器的使用
- 模拟屏幕震动效果,使用cocos2d-x 3.x
- UVALive 3695 Distant Galaxy(枚举)
- eclipse安装axis2插件无法使用
- C++ Singleton (单例) 模式最优实现
- 编程之美-寻找数组中的最大值和最小值方法整理
- 职业规划之工作几年是个坎
- 布局