安卓爬坑记录—— Android Fragment already added

1.前言

因为我近期在项目中使用了MVVM组件——Navigation,同时又因为项目需要使用BottomNavigationView+Fragment+Viewpager2的框架,所以我便早早把viewpager2的适配器写好,但又因为我近期在相关Fragment里添加了Navigation。在运行后便出现了爆红:Fragment already added。

2.错误原因

之所以会出现如上bug显示,是因为在Navigation的作为NavHost的控件里加入了 app:navGraph="@navigation/nav_note_toshow",**这一句的意思不只是起到导航的作用,还是起到将路线起始的Fragment和该Activity进行捆绑,当Activity创建的时候,起始Fragment也会随之创建。**故在之后的ViewPager2适配器里的创建就是重复添加了。。
即使不会报错,当你滑动UI后,你会发现底层还有一个相同UI。

3.最后

任何bug都是可以溯其根源,轻易解决的,缺少的只是一个思路。为了解决这个bug,我抓瞎了一天,虽然耗费的时间很长,但是能够顺利解决,那便是值得祝贺的事情。
做此篇,警示自己不再犯此错误。

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

薪火_

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值