4

編集:

DialogFragmentデバイスの向きを変更した後、親内の参照Activityが NULL になっています。これを修正するにはどうすればよいですか?

フラグメントの作成:

MyFragment myFragment = MyFragment.newInstance(title);
myFragment.show(getFragmentManager(), tag);

方向変更後:

MyFragment myFragment = (MyFragment)getFragmentManager().findFragmentByTag(tag);
myFragment.dismiss();  //NULL pointer exception here
4

1 に答える 1

3

myFragment.setRetainInstance(true);救助のために。


編集:

またonDestroyView、DialogFragmentでオーバーライドします。

@Override
public void onDestroyView() {
  if (getDialog() != null && getRetainInstance())
    getDialog().setOnDismissListener(null);
  super.onDestroyView();
}

これは、次の問題の結果です:http ://code.google.com/p/android/issues/detail?id=17423

于 2013-01-21T20:55:27.450 に答える