public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState)如果我们打电话
fragment.getContext()和container.getContext,我们会得到相同的结果,主机活动吗?
view.getContext()也总是返回Activity context还是可以返回其他类型的context?
发布于 2016-07-23 18:52:29
android中的活动类扩展了上下文类。所以从根本上说,一个活动就是一个语境。但语境可能不是一种活动。
fragment.getContext()将返回它所附加的容器的上下文。因此,是的,container.getContext()将具有与fragment.getContext(),即主机活动相同的结果。
当创建ViewGroup实例时,充气器将该活动的上下文传递给它。这意味着
container.getContext()将返回相同的上下文。
fragment.getActivity()将返回它所附加的活动,该活动又是一个上下文。当片段从活动中分离出来时,它返回null。附加时,它还返回与getContext()相同的内容
关于最后一个问题,view.getContext()返回运行它的上下文。视图不扩展上下文类,实际上,在创建上下文类时,它们需要上下文对象作为参数。因此,当您在活动中创建视图时,您需要传递上下文。当您调用view.getContext()时,您将得到与创建它时相同的上下文。
https://stackoverflow.com/questions/38544095
复制相似问题