大多数情况下,网络调用将在Fragment分离后完成,这就是getActivity()返回null的原因。你的典型解决方案是什么?
解决方案#1:当片段暂停时,终止所有网络呼叫。
解决方案#2:添加“isDetached()”检查
解决方案#3:添加“isAdded()”检查
解决方案#4:参考活动,动力学
答案 0 :(得分:0)
我更喜欢解决方案4.我在访问共享首选项时遇到问题,getActivity()
为空。参考活动解决了这个问题。
Activity mActivity;
@Override
public void onAttach(Activity activity) {
super.onAttach(activity);
this.mActivity = activity;
}