遇到這種問題,通常都是Fragment來不及去attached他本身的Activity
這時,如果你去呼叫需要此Activity的相關動作時,就會發生這樣的Crash
解決方法目前我只找到兩種
第一就是在Fragment的onStart再次取得Activity,如下:
@Override
public void onStart(){
super.onStart();
Log.i(TAG, "onStart");
mActivity = getActivity();
}
隨後即可以呼叫mActivity來做事
如果第一個方法也沒救!
第二個方法就是加入判斷式isAdded():
if(isAdded()){
//你要Activity做的事情
}
就是確認這個Fragment有被加到Activity
沒有留言: