导航而不创建 Fragment 的新实例 - 导航组件

Pat*_*iak 6 android android-architecture-navigation

是否可以在navigate不创建新片段实例的情况下使用Android 导航组件中的函数,而是恢复前一个片段?

我试图恢复以前的片段,但只有使用该 navigate函数才能在片段之间传输数据。

小智 0

我相信您可以通过 ViewModelProvider 从活动中获取视图模型。

inline fun <reified VM : ViewModel> BaseFragment.vmProviderActivity() = lazy {

    val viewModel = activity?.let { ViewModelProviders.of(it).get(VM::class.java) }

    if (viewModel is BaseViewModel) {
        viewModel.kodeinInstance = kodein
    }

    return@lazy viewModel
}
Run Code Online (Sandbox Code Playgroud)