我的应用程序在大多数设备上运行良好,除了某些设备,即使在片段的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);
....
}
getActivity
从内部调用时“可能”返回null
onActivityCreated
...特别是在配置更改期间,例如方向更改,因为活动被破坏...将初始化移动到onAttach
...
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
//initialize here
}
onActivityCreated
是在调用父活动的 onCreate
时调用的...但请记住它可以“重新创建”,在配置更改期间销毁