根据我对的理解,当关联导航图从导航堆栈中弹出时,应该立即调用它们的onCleared方法。我看到的是,在onCleared真正被调用之前,还需要几个导航调用。Log.d(TAG, "onCleared")}当我导航到chat时,视图模型被正确地创建为打印init。通过在chat图中导航,视图模型实例被正确重用。然而,当我从chat图中导航时,我看到Not o
第一个是使用viewModelStoreProvider.视图模型,第二个是。有人能对这些方法有所了解吗?ViewModelProvider(viewModelStore, BaseViewModelFactory(creator)).get(T::class.java)} super.navigator = navigator
public override fun o
当我试图停止计时器时,我遇到了麻烦。这个定时器是在FragmentViewModel中创建的。如果我离开应用程序导航,计时器就会继续运行。我在寻找阻止他的方法,但我不能从片段onStop()函数中访问他,因为他是在ViewModel中创建的,它只在片段onCreate()函数中被引用。有人知道怎么解决这个问题吗?override fun onCreateView( container: ViewGroup?,
(domain.performOperation()) { ... }open class BaseViewModel(private val coroutineCtx: CoroutineContext = Dispatchers.Main)override val coroutineContext:
如何在没有活动的情况下对片段使用共享viewModel?类似于代码,但使用ParentFragment代替ParentFragment()。在这种情况下,当ParentFragment将被销毁时,SharedViewModel将被清除,但是当我从活动中提供SharedViewModel时,当ParentFragment销毁时,它不会被清除。class ParentFragment:Fragment{
override fun onCreate(savedInstanceState: Bun