由于 API 27 FragmentPagerAdapter
已弃用。最好的替代方法是什么?
就我而言,我知道需要使用 super(fragmentManager, BEHAVIOR_RESUME_ONLY_CURRENT_FRAGMENT)
类的东西,但我不知道我的代码中需要使用它。
我在课堂上得到了这些进口商品:
import androidx.fragment.app.FragmentManager
import androidx.fragment.app.FragmentPagerAdapter
但是 FragmentPagerAdapter
在 class MyViewPagerAdapter(manager: FragmentManager) : FragmentPagerAdapter(manager){
被划掉了。
class MyViewPagerAdapter(manager: FragmentManager) : FragmentPagerAdapter(manager){
private val fragmentList : MutableList<androidx.fragment.app.Fragment> = ArrayList()
private val titleList : MutableList<String> = ArrayList()
override fun getItem(position: Int): androidx.fragment.app.Fragment {
return fragmentList[position]
}
override fun getCount(): Int {
return fragmentList.size
}
fun addFragment(fragment: androidx.fragment.app.Fragment, title: String){
fragmentList.add(fragment)
titleList.add(title)
}
override fun getPageTitle(position: Int): CharSequence? {
return titleList[position]
}
}
原文由 wbk727 发布,翻译遵循 CC BY-SA 4.0 许可协议
更新 2021-06-14 :此时,
ViewPager
本身几乎已被弃用。 Technically,ViewPager
is not deprecated, but the two concretePagerAdapter
implementations —FragmentPagerAdapter
andFragmentStatePagerAdapter
— are deprecated.理想情况下,切换到其他内容,例如ViewPager2
或 Accompanist 中可组合的寻呼机。代替:
和:
(假设
MyViewPagerAdapter
不需要这个值是可配置的)