android.support.v4.app.Fragment
类的getActivity()
类(不是框架类)的文档中指出,如果片段,返回的值可能为null
与上下文相关联。
片段如何与上下文相关联? FragmentManager
是将片段附加到某物上的唯一方法吗?但FragmentManager
只能从Activity
获得。或者不是?
答案 0 :(得分:3)
片段如何与上下文相关联?
你一定听说过FragmentHostCallback。如果您还没有查看该链接。
简单来说,它是一个带有 Fragment Host 的集成点。当我说片段主机时,它是一个可以容纳片段的对象。例如Activity
。为了托管片段 - 必须实现FragmentHostCallback
。
但是,我还没有想出如何在非活动对象中实现Fragment。将来可能会看到......
这样, getActivity()将在非活动对象上返回null
。
PS,
如果您需要上下文而不是活动,请务必前往getContext()
答案 1 :(得分:1)
据我所知,你需要一个片段内的上下文..如果是这样,你检查了一个片段内的方法getActivity()
方法?
如果您在片段未附加到活动时引用它,null
也可以是{{1}}。检查片段生命周期以了解更多信息。
希望我帮助