【发布时间】:2020-11-04 13:28:38
【问题描述】:
我正在尝试在我的应用程序中使用片段实现 3 个以上的选项卡。在 FragmentPagerAdapter 中,有一种方法 getItem 返回 Fragment 所以我的问题是我们应该使用什么逻辑来缩短代码,因为当我们返回所有可能超过 10 个或更多的片段时,它会非常混乱
这是我的 PagerAdapter
class PageAdapter(fragmentManager: FragmentManager, private val tabCount: Int) :
FragmentPagerAdapter(fragmentManager, tabCount) {
override fun getCount() = tabCount
override fun getItem(position: Int): Fragment {
when (position) {
0 -> return NewsCategoryOneFragment()
1 -> return NewsCategoryTwoFragment()
2 -> return NewsCategoryThreeFragment()
3 -> return NewsCategoryFourFragment()
4 -> return NewsCategoryFiveFragment()
}
return NewsCategoryOneFragment()
}
override fun getPageTitle(position: Int): CharSequence? {
when (position) {
0 -> return "Buzzfeed"
1 -> return "CNN"
2 -> return "ESPN"
3 -> return "Fortune"
4 -> return "Fox News"
}
return null
}
}
任何人都可以建议。 谢谢你
【问题讨论】:
-
您可以传递一个包含这些片段的列表并按位置获取片段。对于标题,创建一个包含“title”属性的“BaseFragment”。
-
但是我怎样才能创建我不理解的这些片段的列表@kagkar
标签: android kotlin android-viewpager fragment