Правильный способ удаления DialogFragment, когда приложение находится в фоновом режиме

Я начал использовать DialogFragment, потому что они хорошо работают при смене ориентации и так далее. Но есть неприятная проблема, с которой я столкнулся.

У меня есть AsyncTask, который показывает прогресс DialogFragment и удаляет его onPostExecute. Все работает хорошо, за исключением случая, когда onPostExecute происходит во время работы приложения в фоновом режиме (например, после нажатия кнопки Home). Тогда я получаю эту ошибку на DialogFragment dismissing - "Can not perform this action after onSaveInstanceState". Doh. Обычные диалоги работают просто отлично. Но не FragmentDialog.

Поэтому мне интересно, как правильно завершить DialogFragment, когда приложение находится в фоновом режиме? Я не очень много работал с фрагментами, поэтому думаю, что я просто что-то упускаю.

64
задан Sver 17 February 2012 в 08:46
поделиться