Имеет проблему также и решил ее следующим образом:
- Не возвращает пустой диалог в методе: защищенный диалог onCreateDialog (int id)
В Android 2.1 в Activity.java ошибка была поднята в строке 871.
private Dialog createDialog(Integer dialogId, Bundle state) {
869 final Dialog dialog = onCreateDialog(dialogId);
870 if (dialog == null) {
871 throw new IllegalArgumentException("Activity#onCreateDialog did "
872 + "not create a dialog for id " + dialogId);
873 }
874 dialog.dispatchOnCreate(state);
875 return dialog;
876 }
Если вы посмотрите в более позднем Android, есть проверка на нулевой диалог, и он возвращается с возвратом.Так что здесь это работает.
-Не использовать Bundle (изменено в API8):
защищенный диалог onCreateDialog (int id, Bundle bundle);
использовать:
защищенный диалог onCreateDialog (int id);
-Я также использовал следующую проверку (был особый случай с настраиваемым диалогом):
if(Build.VERSION.SDK_INT <= Build.VERSION_CODES.ECLAIR_MR1) {
return dialog;
} else {
return null;
}
Может быть, это кому-нибудь поможет...