• QQ
  • nahooten@sina.com
  • 常州市九洲新世界花苑15-2

Android

办理Fragment切换过快程序崩溃

原创内容,转载请注明原文网址:http://homeqin.cn/a/wenzhangboke/jishutiandi/Android/2019/0528/514.html

 

Android程序员开辟,这个问题势必会出现,如下是我碰到时若何办理的

方法一:

 

1、在onCreatView内部实行初始化操纵 

2、context应用之前判空 

3、当出现这个问题时,只有在Fragment 中申明一个高低文类型的成员变量,并在onAttach()方法中将getActivity()的值赋给变量,在Fragment中应用到getActivity()时,都是用context即可。也即是说在将Fragment挂载到Activity时,就获取到了这个activity,并将这个activity留存起来了,这样便直接应用而不必要每次应用时都挪用一遍getActivity()了。 

4、MainActivity重写onSaveInstanceState方法,将super.onSaveInstanceState(outState);注释掉,让其不再留存Fragment的状况,达到其跟着MainActivity一起被接管的结果!

 

方法二:

 

把co妹妹it()方法替代成 co妹妹itAllowingStateLoss()------方法是在该Activity即将被烧毁前挪用,来留存Activity数据的,要是在留存玩状况后再给它增加Fragment就会失足

 

 

 

方法三:

 

在add(fragment)  的时候举行校验 是否曾经增加该fragment

 

方法是isAdded()

 


上篇:上一篇:Java中String和byte[]间的转换浅析
下篇:下一篇:HttpUrlConnection 应用