gpt4 book ai didi

java - 我们如何保证 onAttach 始终有效(Fragment)?

转载 作者:行者123 更新时间:2023-12-01 11:45:05 26 4
gpt4 key购买 nike

有什么方法可以保证 onAttach 正常工作吗?

@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
}

如果我稍后在 fragment 中调用 getActivity(),我是否应该担心并始终这样做:

if(getActivity()!=null)

如果为null我该怎么办?

fragment 流的顺序为: enter image description here

最佳答案

If I call getActivity() later down in the fragment, should I be concerned and always do: if(getActivity()!=null)

这取决于“fragment 后面”的性质。在主应用程序线程上时,在调用 onAttach() 之间和onDetach() , getActivity()应该返回一个非 null值(value)。但是:

  • 如果您的 fragment 正在管理 AsyncTask或其他后台线程,在附加/分离发生时(例如,配置更改)可能会对该线程进行调用,因此此类后台线程不应尝试引用该 Activity

  • 如果您不确定在 onAttach() 之间调用的方法和onDetach() ,练习防御性编程并验证 Activity您从 getActivity() 返回的信息不是null

And what should I do if it is null?

优雅地失败。除此之外,我们无法为您提供建议,因为我们不知道您想通过该 Activity 做什么。

关于java - 我们如何保证 onAttach 始终有效(Fragment)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29215143/

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