在某些有根设备中的 onActivityCreated 片段中 getActivity 返回 null

Tak*_* Lê 1 android android-fragments

我的应用程序在大多数设备上运行良好,但在某些根设备上运行良好。在onActivityCreated片段中,getActivity保持返回 null。我需要Context类来设置下面的内容。

所以有人可以帮助我吗?

更新

public class BaseProductFragment extends Fragment {

...

public View onCreateView(LayoutInflater inflater, ViewGroup container,
        Bundle savedInstanceState) {
    View rootView = inflater.inflate(layout_id, container,
            false);
    return rootView;
}

public void onActivityCreated(final Bundle savedInstanceState) {
    super.onActivityCreated(savedInstanceState);
    ImageCacheParams cacheParams = new ImageCacheParams(getActivity(),
            Utils.PRODUCTS_CACHE_DIR);
    ....
}
Run Code Online (Sandbox Code Playgroud)

Leo*_*Leo 5

getActivitynull如果从内部调用,“可能”会返回onActivityCreated......尤其是在配置更改(如方向更改)期间,因为活动被破坏......将该初始化移动到onAttach......

@Override
public void onAttach(Activity activity) {
    super.onAttach(activity);
    //initialize here
}
Run Code Online (Sandbox Code Playgroud)

onActivityCreated是在调用父活动时onCreate调用的...但请记住,它可以“重新创建”,在配置更改期间销毁