gpt4 book ai didi

android - 在 fragment getActivity() 与 mActivity 引用中显示 toast

转载 作者:行者123 更新时间:2023-12-02 14:27:44 25 4
gpt4 key购买 nike

在我的 fragment 中调用一次 getActivity() 方法并将引用保存在 mActivity 中是否比每次要显示 Toast 消息时调用 getActivity() 更好?

Toast.makeText(mActivity, text, duration).show();

对比

Toast.makeText(getActivity(), text, duration).show();

最佳答案

getActivity() 应该是首选,原因有两个:
1)内存泄漏预防
存在变量 mActivity 会带来内存泄漏的机会,例如错误地将变量设置为静态,使得在某些运行的匿名AysncTask

中可以轻松方便地引用该 Activity

2) fragment - Activity 关系的正确性质
fragment 可以多次连接或分离。因此,获取托管当前 fragment 的 Activity 的引用应该按需。拥有 mActivity 变量意味着您需要正确设置和取消设置它。

请注意,Toast 此处需要的是 Context 对象,因此它不一定是此处所需的 Activity。应用程序上下文对象也足够了

关于android - 在 fragment getActivity() 与 mActivity 引用中显示 toast,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50577501/

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