Android Fragment不显示,但是依然能点击到的BUG(已解决)

来源:互联网 发布:重装徒步鞋 知乎 编辑:程序博客网 时间:2024/05/16 07:30

最近在做项目的时候,用了最熟悉的Fragment,但是每次程序出现BUG,程序重新加载的时候该Fragment就不再显示了,但是依然能点击到,让人很是头疼,一开始一直在寻找原因,排除了代码不规范的情况,最后还是决定去网上找API(中文,别怪小弟英文差),最后找到了BUG的解决方法!下面开始上图

这是程序正常状态下显示的Fragment

红色部分为嵌套的Fragment,出现BUG就这样了,每次都这样,但是功能键都能正常获取到焦点。

解决方法:

原文:

不断的旋转屏幕,你会发现每旋转一次屏幕,屏幕上就多了一个FragmentOne的实例,并且后台log会打印出许多套生命周期的回调。

当屏幕发生旋转,Activity发生重新启动,默认的Activity中的Fragment也会跟着Activity重新创建;这样造成当旋转的时候,本身存在的Fragment会重新启动,然后当执行Activity的onCreate时,又会再次实例化一个新的Fragment,这就是出现的原因。

实行方法:

在每次实例化Fragment 的Activity或者Fragment中,对onSaveInstanceState==null进行判断,为bull时初始化Fragment


0 0
原创粉丝点击