首页 > 解决方案 > Android:可以设置多个片段工厂吗?“无法实例化片段 xxx”

问题描述

我正在尝试将多个设置fragment factories为我的MainNavHostFragment. 我的问题是我的方法不起作用,它只接受最后设置的 fragmentFactory。

我试图用谷歌搜索它,但没有一个页面说/没有说我们可以创建多个FragmentFactories......我想要多个片段工厂以实现更好的可读性

当前方法

@AndroidEntryPoint
class MainNavHostFragment : NavHostFragment() {

    @Inject lateinit var mainFragmentFactory: MainFragmentFactory
    @Inject lateinit var emailFragmentFactory: EmailFragmentFactory
    @Inject lateinit var shopFragmentFactory: ShopFragmentFactory
    @Inject lateinit var userLogInProcessFragmentFactory: UserLogInProcessFragmentFactory
    @Inject lateinit var userRegistrationFragmentFactory: UserRegistrationFragmentFactory
    @Inject lateinit var userDataFragmentFactory: UserDataFragmentFactory

    override fun onAttach(context: Context) {
        super.onAttach(context)
        childFragmentManager.fragmentFactory = mainFragmentFactory
        childFragmentManager.fragmentFactory = emailFragmentFactory
        childFragmentManager.fragmentFactory = shopFragmentFactory
        childFragmentManager.fragmentFactory = userLogInProcessFragmentFactory
        childFragmentManager.fragmentFactory = userRegistrationFragmentFactory
        childFragmentManager.fragmentFactory = userDataFragmentFactory
    }
}

标签: androidkotlinandroid-fragmentsandroidxdagger-hilt

解决方案


推荐阅读