我的应用程序在大多数设备上运行良好,但在某些植根设备上运行良好。在片段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
,但是请记住,它可以被“重新创建”,在配置更改期间会被销毁关于android - 在某些已root用户的设备中, fragment onActivityCreated中的getActivity返回null,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/27477167/