gpt4 book ai didi

android - fragment 中的 setRetainInstance(boolean) 方法

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

从文档中得知,setRetainInstance(boolean) 方法有助于在设备配置更改时保留所有 Activity 对象,但我阅读的大多数示例和文档都涉及 headless fragment 。我们不应该在带有 UI 元素的 fragment 中使用该方法吗?如果不能,请给出详细原因。

最佳答案

不要使用 headless fragment 进行后台处理。即使像这样的文章:http://www.vogella.com/tutorials/AndroidFragments/article.html#headlessfragments1或者这个:http://luboganev.github.io/blog/headless-fragments/提一下。

后台处理应该在服务中完成(存在替代方案,但问题不在于此)。这意味着在 headless fragment 中执行后台处理的组件是一个“漏洞”(不是谷歌意味着要使用 fragment 的方式)。

注意:有些设备即使使用 setRetainInstance(true) 也不会在配置更改时保留 fragment 。使用 headless fragment 运行后台任务显然在这些设备上效果不佳。

setRetainInstance(true) 旨在与具有 ui 的 fragment 一起使用以在配置更改时保留它。如果您在 Fragment 中使用 Loader 会非常方便,因为(昂贵的?)即使 Activity 被销毁并重新创建,查询也不会重新运行。

关于android - fragment 中的 setRetainInstance(boolean) 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33991521/

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