从片段中获取上下文 - NullPointerException?

时间:2015-03-15 14:02:23

标签: android android-fragments nullpointerexception sqliteopenhelper

我尝试从context的{​​{1}}方法获取活动Fragment

onAttach()

但是,我仍然得到@Override public void onAttach(Activity activity) { super.onAttach(activity); context = activity.getApplicationContext(); obj = new MySQLiteHelper(context); ... } 我应该如何构建代码以避免这种情况?

这是我的片段代码:

NullPointerException

问题的原因是什么?有人可以解释一下吗?

1 个答案:

答案 0 :(得分:0)

Android在同一场景的片段中为您提供getActivity()

这是来自onAttach()的文档。在onAttach()之后,onCreate会立即调用。

我认为如果您查看onCreate(),则可以将其用于您的目的。

如果你仔细阅读fragment lifecycle,onAttach()之后的活动onActivityCreated onccurs。你需要创建的活动才能获得上下文。如果可能,你可以将你的代码转移到{{1}片段。