gpt4 book ai didi

android - 在 fragment 中的何处设置 Firebase AddValueEventListener?

转载 作者:行者123 更新时间:2023-11-29 15:40:41 24 4
gpt4 key购买 nike

我正在创建一个带有从 Firebase 中提取数据的 fragment 的 Android 应用程序。

目前,我已经在 onStart() 方法中设置了我的 addValueEventListener,它能够在第一次访问 fragment 时从 Firebase 中提取数据,但是当我更改以查看应用程序中的其他 fragment 并返回到原始 fragment ,Firebase 数据消失,直到我旋转屏幕。

我应该在哪里放置我的 AddValueEventListener 方法来解决这个问题?

最佳答案

简答:将其添加到onResume方法中,并在onPause方法中将其删除。

长答案: fragment 由 FragmentManager 管理,在大多数情况下它会保留 fragment 的一个实例,这样它就不需要在每次显示 fragment 时都创建一个新 fragment 。因此,onCreateonCreateViewonStart 方法将在创建 fragment 或更改配置(即屏幕旋转)时调用一次。

另一方面,每次 fragment 获得焦点时都会调用 onResume 方法,因此添加 addValueEventListener 总是会被调用。但是,这将导致添加多个值甚至监听器,因此最好在 onPause 方法中使用 removeEventListener

参见:https://developer.android.com/guide/components/fragments.html

关于android - 在 fragment 中的何处设置 Firebase AddValueEventListener?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41093337/

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