按照常规Tablayout + Viewpager + Fragment

然后报错 Fragment already added 。根据错误信息找到FragmentManager中,

 makeActive(fragment);
        if (!fragment.mDetached) {
            if (mAdded.contains(fragment)) {
                throw new IllegalStateException("Fragment already added: " + fragment);
            }
            synchronized (mAdded) {
                mAdded.add(fragment);
            }

然后代码确认了下,确实new 了两个Fragme其他页面也是这么写的,没有问题。

baidu找到的都是说给Fragment添加Tnt,ag 防止重复啥。我都感觉不是我这个问题的解决方法。

最后后google 一下,找到一篇博文: 卧槽系列 - Fragment already added 或许并不是你想的那样

其实就是createview 方法中报错了。加了try catch 打印了错误日志,发现是初始化数据报错。

注:

简单说下遇到问题的解决方法,先百度(虽然很鄙视百度,但不用fq呀,搜索块),如果前一两页搜索结果解决不了问题,

果断google大法,这此的文章就是google 出来的,因为是自己博客,百度前几页肯定搜录不了。

参考:

https://hoyouly.fun/2019/11/20/fragment_aready_add/

https://blog.csdn.net/newone_helloworld/article/details/88537285

https://www.cnblogs.com/yelanggu/p/10970305.html

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐