从Android中的Fragment获取活动视图

时间:2017-06-20 06:37:23

标签: android android-fragments view

我有ActivityFragment。我需要访问片段内的活动视图。我尝试使用onAttach(activity)方法访问它,但它返回null

这是我的代码:

@Override
public void onAttach(Activity activity) {
    super.onAttach(activity);

    Log.i(TAG, "onAttach");
    pictureView = (ImageView) getActivity().findViewById(R.id.pictureView);

    if(pictureView == null)
        Log.i(TAG, "null");
    else
        Log.i(TAG,"Not null");

}

结果null 我做错了什么?

2 个答案:

答案 0 :(得分:1)

像这样使用onActivityCreated

@Override
public void onActivityCreated(@Nullable Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    pictureView = (ImageView) getActivity().findViewById(R.id.pictureView);

}

答案 1 :(得分:0)

onAttach()并不保证活动已创建,只会将其附加到主机活动,因此您看到的是 Null 值。

您应该在 onActivityCreated()部分中查找该视图。