ViewPager2在第0位添加Item后的滚动异常问题求助
ViewPager2 首位添加Item后滚动异常问题
在ViewPager2的第0位添加Item后,出现以下异常:
- 新添加的Item无法正常滚动显示,执行滚动操作后会自动回到当前视图
- 初始的主Item在添加新Item到首位后也无法再显示
我的ViewPager2适配器代码如下:
inner class ScreenSlidePagerAdapter(fa: FragmentActivity) : FragmentStateAdapter(fa) { override fun getItemCount(): Int { return list.size } override fun createFragment(position: Int): Fragment = ScrollFragment(list[position]) fun addFragment(string: String) { list.add(string) notifyItemInserted(list.size) } fun addAtPreviousFragment(string: String) { list.add(0, string) notifyItemInserted(0) } }
其中addAtPreviousFragment方法负责在第0位添加内容。
添加Item的点击事件代码如下:
mAddAtNext.setOnClickListener { Handler(Looper.getMainLooper()).postDelayed( { val randomNext = (50..90).random() println("randomNext >>>> $randomNext") pagerAdapter.addFragment("Next $randomNext") }, 200 ) } mAddAtPrevious.setOnClickListener { Handler(Looper.getMainLooper()).postDelayed( { val randomPrevious = (0..40).random() println("randomPrevious >>>> $randomPrevious") pagerAdapter.addAtPreviousFragment("Previous $randomPrevious") }, 200 ) }
完整代码已上传至GitHub仓库,恳请各位提供帮助,谢谢!
内容的提问来源于stack exchange,提问作者Rakshit Nawani
相关产品推荐
相关产品推荐

