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

How to fix "java.lang.IllegalStateException: Fragment already added" in Android Kotlin

我正在尝试将我的 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()
        }
    }

我的 PagerAdapter 中的 getItem() 函数

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

只要检查一下'FragIn()'的方法里面有什么,如果没有new fragment就会得到一个重复的片段。