Я выполняю некоторую фоновую работу и показываю DialogFragment, пока я это делаю. Как только моя работа выполнена и вызывается соответствующий обратный вызов, я закрываю диалоговое окно. Когда я это делаю, я получаю сбой, вызванный NPE в исходном коде Android, здесь:
void dismissInternal(boolean allowStateLoss) {
if (mDialog != null) {
mDialog.dismiss();
mDialog = null;
}
mRemoved = true;
if (mBackStackId >= 0) {
getFragmentManager().popBackStack(mBackStackId,
FragmentManager.POP_BACK_STACK_INCLUSIVE);
mBackStackId = -1;
} else {
FragmentTransaction ft = getFragmentManager().beginTransaction();
ft.remove(this);
if (allowStateLoss) {
ft.commitAllowingStateLoss();
} else {
ft.commit();
}
}
}
, особенно в строке: FragmentTransaction ft = getFragmentManager().beginTransaction();