2015-05-13 6 views
1

У меня есть диалог (диалог материала из этого lib) с 2 редакторами. После того, как я повернул действие устройства, будет уничтожено и диалоговое окно. Я знаю, что edittext имеет автосохранение для ввода текста, но как я могу запретить диалог от уничтожения?Диалог восстановления после поворота экрана

MaterialDialog dialog = new MaterialDialog.Builder(context).customView(R.layout.dialog_edit_point_info, false) 
      .positiveText(R.string.ok).negativeText(R.string.cancel) 
      .positiveColorRes(R.color.dark_blue).negativeColorRes(R.color.black) 
      .iconRes(R.drawable.ic_marker_location) 
      .autoDismiss(false) 
      .title(R.string.edit_title_dialog).callback(callback).build; 
+1

Используйте [DialogFragment] (http://developer.android.com/reference/android/app/DialogFragment.html) –

ответ

5

Поместите ваш диалог внутри DialogFragment:

public static class MyAlertDialogFragment extends DialogFragment { 

@Override 
public Dialog onCreateDialog(Bundle savedInstanceState) { 

    MaterialDialog dialog = new MaterialDialog.Builder(context).customView(R.layout.dialog_edit_point_info, false) 
     .positiveText(R.string.ok).negativeText(R.string.cancel) 
     .positiveColorRes(R.color.dark_blue).negativeColorRes(R.color.black) 
     .iconRes(R.drawable.ic_marker_location) 
     .autoDismiss(false) 
     .title(R.string.edit_title_dialog).callback(callback).build(); 

} 
} 

Для вызова диалога:

void showDialog() { 
    DialogFragment newFragment = new MyAlertDialogFragment(); 
    newFragment.show(getFragmentManager(), "dialog"); 
} 

Вы найдете более подробную информацию здесь: http://developer.android.com/reference/android/app/DialogFragment.html

Если вы используете Поддержка- Libs используют соответствующие классы поддержки: http://developer.android.com/reference/android/support/v4/app/DialogFragment.html

0

Используйте этот lib insteat of your. Он широко настраивается, показывает диалоги как DialogFragment и может отображать диалоговое окно, вызванное другим диалогом.