获取分离片段中的上下文/活动?

ban*_*ing 5 android android-context android-asynctask android-fragments

有一个类似的问题,大多数答案建议使用getActivity()以获取片段的上下文,但如果片段是分离的(如果getActivity()返回null),如何获取对活动/上下文的引用?

我的情况是我的片段启动了一个AsyncTask,它在完成时会调用onSuccess()我片段的方法.但是我的片段onSuccess()方法需要一个上下文来显示Toast消息或访问共享首选项.那么获得上下文有可靠的方法吗?

我正在考虑的一种方法是将一个上下文对象传递给我的AsyncTask构造函数,并将其传递回我前面提到的onSuccess()回调方法 - 但是这会导致内存泄漏吗?

(NB -这里有一个答案在这里显示了如何检索当前活动,但同样,它需要一个有效的上下文.)

Mil*_*nia 3

在您的片段中使用它:

private Context context;

@Override
public void onAttach(Activity activity) {
    super.onAttach(activity);
    context = activity;
}
Run Code Online (Sandbox Code Playgroud)

然后在你想要的地方使用context


归档时间:

查看次数:

2851 次

最近记录:

7 年,10 月 前