我已经使用 和 Fragments 设置了我的活动ViewPager2
布局BottomNavigationView
。在我的第一个片段中ViewPager2
包含一个ImageSlider
.
当我滚动 ImageSlider 时,整个片段(在 中ViewPager2
)滚动到第二个片段。为什么会这样?
然后我改为 NormalViewPager
而不是ViewPager2
和FragmentPagerAdapter
而不是FragmentStateAdapter
,它完美地工作,不幸FragmentPagerAdapter
的是被弃用了。?
布局
<androidx.viewpager2.widget.ViewPager2
android:id="@+id/viewPager"
android:layout_width="match_parent"
android:layout_height="match_parent"/>
活动
val adapter = ViewPagerAdapter(this)
viewPager.adapter = adapter
ViewPagerAdapter
const val FRAGMENT_COUNT = 4;
class ViewPagerAdapter(activity: FragmentActivity): FragmentStateAdapter(activity){
override fun getItemCount() = FRAGMENT_COUNT
override fun createFragment(position: Int): Fragment {
return when(position) {
0 -> HomeFragment()
1 -> DepartmentFragment()
2 -> ConnectFragment()
3 -> SocialFragment()
else -> HomeFragment()
}
}
}