Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/203.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android AlertDialog在旋转后重新创建_Android_Android Alertdialog - Fatal编程技术网

Android AlertDialog在旋转后重新创建

Android AlertDialog在旋转后重新创建,android,android-alertdialog,Android,Android Alertdialog,我正在尝试使用来自的Alertdialog。但有一个问题。如果我旋转手机,则会重新创建警报对话框,并显示两个警报对话框。如何防止重新创建和重新创建alertDialog 这是我的代码: public class FireMissilesDialogFragment extends DialogFragment { @Override public Dialog onCreateDialog(Bundle savedInstanceState) { // Us

我正在尝试使用来自的Alertdialog。但有一个问题。如果我旋转手机,则会重新创建警报对话框,并显示两个警报对话框。如何防止重新创建和重新创建alertDialog

这是我的代码:

   public class FireMissilesDialogFragment extends DialogFragment {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {
        // Use the Builder class for convenient dialog construction
        AlertDialog.Builder builder = new AlertDialog.Builder(getActivity());
        builder.setMessage(R.string.dialog_fire_missiles)
               .setPositiveButton(R.string.fire, new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {
                       // FIRE ZE MISSILES!
                   }
               })
               .setNegativeButton(R.string.cancel, new DialogInterface.OnClickListener() {
                   public void onClick(DialogInterface dialog, int id) {
                       // User cancelled the dialog
                   }
               });
        // Create the AlertDialog object and return it
        return builder.create();
    }
}
这是显示方法:

public void confirmFireMissiles() {
    DialogFragment newFragment = new FireMissilesDialogFragment();
    newFragment.show(getSupportFragmentManager(), "missiles");
}

检查是否设置了
savedInstanceState

   public class FireMissilesDialogFragment extends DialogFragment {
    @Override
    public Dialog onCreateDialog(Bundle savedInstanceState) {

        if (savedInstanceState == null) {
            // create new dialog
        }
   }
加上这个

android:configChanges=“orientation | screenSize”
属性在清单文件中的
活动标记中。

如果(savedInstanceState==null){//create new dialog}
我已将该代码放入
public void confirmFirefielms()
中,谢谢!