Android 获取已激活的片段时,视图寻呼机出现错误

Android 获取已激活的片段时,视图寻呼机出现错误,android,android-viewpager,kotlin,Android,Android Viewpager,Kotlin,我正在尝试创建动态循环视图寻呼机适配器我想动态地从适配器中添加和删除页面,但在从最后一页转到第二页时出错 我的适配器类是: class UpCommingEventAdapter(fragmentManager: FragmentManager, val mFragmentList: ArrayList<UpcommingEventsFragment>) : FragmentStatePagerAdapter (fragmentManager) { override fun

我正在尝试创建动态循环视图寻呼机适配器我想动态地从适配器中添加和删除页面,但在从最后一页转到第二页时出错

我的适配器类是:

class UpCommingEventAdapter(fragmentManager: FragmentManager, val mFragmentList: ArrayList<UpcommingEventsFragment>) : FragmentStatePagerAdapter
(fragmentManager) {
    override fun getItem(position: Int): Fragment {
        return when (position) {
            0 -> {
                mFragmentList[mFragmentList.size - 1]
            }
            mFragmentList.size + 1 -> {
                UpcommingEventsFragment.newInstance("0")
            }
            else -> {
                when (position) {
                    1 -> {
                        UpcommingEventsFragment.newInstance("0")
                    }
                    else -> {
                        mFragmentList[position - 1]
                    }
                }
            }
        }
    }

    fun removeFragmnet(tag: String) {
        for (i in 0 until mFragmentList.size) {
            if (mFragmentList[i].ftag == tag) {
                mFragmentList.removeAt(i)
                this.notifyDataSetChanged()
                break
            }
        }
        this.notifyDataSetChanged()
    }

    override fun getPageTitle(position: Int): CharSequence {
        return "Page " + position
    }

    override fun getCount(): Int {
        val itemsSize = mFragmentList.size
        return if (itemsSize > 1) itemsSize + 2 else itemsSize
    }

    override fun getItemPosition(`object`: Any): Int {
        return PagerAdapter.POSITION_NONE
    }
}
我想

else -> {
     mFragmentList[position - 1]
}
应该是

else -> {
     mFragmentList[position]
}
else -> {
     mFragmentList[position]
}