Mic*_*bay 1 android android-fragments android-viewpager kotlin
我想在我的应用程序中设置一个 viewPager 和寻呼机适配器,但我无法实现它,因为我不能使用 fragmentManager。我得到以下错误:
“错误:(45, 38) 分类器‘FragmentManager’没有伴随对象,因此必须在此处初始化”
我的代码是:
import android.support.v4.app.Fragment
import android.support.v4.app.FragmentManager
private lateinit var pagerAdapter: mPagerAdapter
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main2)
pagerAdapter = mPagerAdapter(FragmentManager) // err is here
viewPager.adapter = pagerAdapter
}
class mPagerAdapter(fragmentManager: FragmentManager) :
FragmentStatePagerAdapter(fragmentManager) {
// 2
override fun getItem(position: Int): Fragment {
when (position) {
0 -> return Tab1() as Fragment
1 -> return Tab2() as Fragment
2 -> return Tab3() as Fragment
}
return Tab1() as Fragment
}
// 3
override fun getCount(): Int {
return 3
}
}
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能解决这个问题?
FragmentManager是类名。fragmentManager,带有小写的“f”,是对getFragmentManager()方法的属性引用。
您想改为使用supportFragmentManager(作为getFragmentManager()返回 Framework FragmentManager,而不是 Support Library FragmentManager):
pagerAdapter = mPagerAdapter(supportFragmentManager)
Run Code Online (Sandbox Code Playgroud)