gpt4 book ai didi

android - 在 fragment onCreateView 或 onCreate 方法中哪个是初始化 ViewModel 的最佳位置?

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:08 24 4
gpt4 key购买 nike

我在 ViewModel 中使用实时数据。

我有一个场景,其中有两个 fragment 和一个 Activity 。 fragment A 和 fragment B。

在 Activity 中,我启动了 Fragment A(它显示名称列表,即从后端获取),当我点击 Name 时,它​​显示 Fragment B(这是返回堆栈)。

现在,如果我在 fragment B 中按下后退按钮,它会返回到 fragment A,它会显示一个空白屏幕,因为我已经在 fragment A 的 onCreate 方法中实现了 ViewModel。

但是如果我在 fragment A 的 oncreateView 方法中实现了 ViewModel,它将继续添加观察者,因为 fragment 没有被销毁。

最佳答案

为了避免在 onCreateView 中保留额外的 Observers,将 getViewLifecycleOwner() 作为 LifecycleOwner 传递给 LiveDataobserve 方法。一旦 fragmentView 被销毁,这将删除之前的 Observer

关于android - 在 fragment onCreateView 或 onCreate 方法中哪个是初始化 ViewModel 的最佳位置?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52607047/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com