编辑:
我有一个DialogFragment
其中父Activity
中的引用在我更改设备方向后为空。我该怎么解决?
碎片创建:
MyFragment myFragment = MyFragment.newInstance(title);
myFragment.show(getFragmentManager(), tag);
方向改变后:
MyFragment myFragment = (MyFragment)getFragmentManager().findFragmentByTag(tag);
myFragment.dismiss(); //NULL pointer exception here
最佳答案
为了营救。
编辑:
同时覆盖对话框片段中的myFragment.setRetainInstance(true);
:
@Override
public void onDestroyView() {
if (getDialog() != null && getRetainInstance())
getDialog().setOnDismissListener(null);
super.onDestroyView();
}
这是以下问题的结果:http://code.google.com/p/android/issues/detail?id=17423