Android 如何将FragmentFactory与FragmentStatePagerAdapter一起使用
我喜欢Android 如何将FragmentFactory与FragmentStatePagerAdapter一起使用,android,android-fragments,androidx,fragmentstatepageradapter,android-fragmentfactory,Android,Android Fragments,Androidx,Fragmentstatepageradapter,Android Fragmentfactory,我喜欢FragmentFactory的方法,它可以将依赖项传递给构造函数中的片段 我想将自定义的FragmentFactory与FragmentStatePagerAdapter一起使用 我正在一个活动中主持查看寻呼机。我可以创建一个自定义片段工厂,并使用 supportFragmentManager.fragmentFactory = CustomFragmentFactory() 然后,我可以使用supportFragmentManager初始化我的FragmentStatePagerAd
FragmentFactory
的方法,它可以将依赖项传递给构造函数中的片段
我想将自定义的FragmentFactory
与FragmentStatePagerAdapter
一起使用
我正在一个活动中主持查看寻呼机。我可以创建一个自定义片段工厂,并使用
supportFragmentManager.fragmentFactory = CustomFragmentFactory()
然后,我可以使用supportFragmentManager
初始化我的FragmentStatePagerAdapter
。
到目前为止还可以
我的问题是,我在视图寻呼机中的片段显示的数据取决于位置
假设我有一个列表items
和itemsfragment
,它显示在一个显示items[position]
的视图页面中,因此有这样一个构造函数:
class ItemFragment(val item: Item) : Fragment()
我必须如何实现CustomFragmentFactory
和FragmentStatePagerAdapter
的getItem(position:Int)
功能,以实现与此等效的安全功能:
override fun getItem(position: Int) = ItemFragment(items[position])
你找到解决办法了吗?我面临着同样的问题。不幸的是,没有。我根本没有使用
FragmentFactory
方法,而是坚持使用空构造函数片段的传统方法,使用Bundle
传递参数。