最近测试项目发现,当按下home键切出应用接着浏览其他应用(这个操作是很常见的),再通过任务列表进入App时就会报FragmentManger NullPointerException:
WX20210401-175427@2x.png
这个问题是因为activity被回收时,系统已经对已加入的fragment进行了保存,这个从activity的源代码中可以看出来,因此,再activity恢复时需要在oncreate函数中处理savedInstanceState是否为空,当不为空时需要通过getSupportFragmentManager().findFragmentByTag(tag)获取fragment并进行null判断,到此问题解决。
网友评论