如何在安卓Kotlin中修复"java.lang.IllegalStateException: Fragment already added"



我正试图将我的RecyclerView显示为一个片段,该片段位于TabLayout中。

我是新手,不知道该怎么修复它。在调试时,我得到了:

java.lang.IllegalStateException: Fragment already added

override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val viewPager: ViewPager = findViewById(R.id.view_pager)
val tabs: TabLayout = findViewById(R.id.tabs)
viewPager.adapter = SectionsPagerAdapter(this, supportFragmentManager)
tabs.setupWithViewPager(viewPager)

主要活动

override fun getItem(position: Int): Fragment {
return when (position) {
0 -> FragIn()
1 -> FragProd()
2 -> FragShelf()
else -> FragIn()
}
}

getItem((-我的PagerAdapter 中的函数

override fun getItem(position: Int): Fragment {
return when (position) {
0 -> FragIn()
1 -> FragProd()
2 -> FragShelf()
else -> FragIn()
}
}

只要检查"FragIn(("方法中的内容,如果没有new fragment,就会得到一个重复的片段。

最新更新