Java.lang.IllegalStateException: No activity


当使用Fragment去嵌套另外一些子Fragment的时候,我们需要去管理子Fragment,这时候需要调用ChildFragmentManager去管理这些子Fragment,由此可能产生的Exception主要是: Java.lang.IllegalStateException: No activity

描述:当第一次从一个Activity启动Fragment,然后再去启动子Fragment的时候,存在指向Activity的变量,但当退出这些Fragment之后回到Activity,然后再进入Fragment的时候,这个变量变成null

原因:Fragment在detached之后都会被reset掉,但是它并没有对ChildFragmentManager做reset,所以会造成ChildFragmentManager的状态错误

解决:我们需要在Fragment被detached的时候去重置ChildFragmentManager

posted @ 2021-03-24 10:35  王哒哒  阅读(470)  评论(0)    收藏  举报