【问题标题】:AlertDialog reappears on rotationAlertDialog 在旋转时重新出现
【发布时间】:2013-06-01 13:31:42
【问题描述】:

我知道这个问题已经被问过很多次了,但没有答案可以帮助我。

我有一个对话框会在某个时刻弹出(当我调用方法“showServerDialog”时)。 显示对话框,一切都很好,直到我使用“negativeButton”关闭对话框然后旋转屏幕。然后对话框重新出现,尽管我关闭了它。

我读过很多次,如果我使用 showDialog(int id) 方法显示对话框并覆盖 onCreateDialog(int id) 方法,android 会自动处理所有内容。这正是我正在做的事情:

@SuppressWarnings("deprecation")
public void showServerDialog(int position){
    showDialog(REMOVE_SERVER_DIALOG_ID);
}

@SuppressWarnings("deprecation")
@Override
protected Dialog onCreateDialog(int id) {

    switch (id) {
    case REMOVE_SERVER_DIALOG_ID:

        System.out.println("---------------------------------DIALOG");

        // Create AlterDialog
        Builder builder = new AlertDialog.Builder(this);
        builder.setMessage("This will end the activity");
        builder.setCancelable(true);
        builder.setPositiveButton("I agree", new OkOnClickListener());
        builder.setNegativeButton("No, no", new CancelOnClickListener());

        AlertDialog dialog = builder.create();
        dialog.show();
        return dialog;
    }
    return super.onCreateDialog(id);
}

private final class CancelOnClickListener implements DialogInterface.OnClickListener{

    public void onClick(DialogInterface dialog, int which) {
        // Do nothing and just close dialog
    }
}

但是,当我使用对话框中的按钮正常关闭对话框并旋转屏幕时,它就会重新出现。

我完全被它困住了。请帮忙。

【问题讨论】:

    标签: android android-alertdialog


    【解决方案1】:

    所以,终于找到了答案:

    我不必在 OnClickListeners 中什么都不做,我必须调用: MyActivity.this.removeDialog(REMOVE_SERVER_DIALOG_ID);

    不要解雇!这行得通!

    【讨论】:

      【解决方案2】:

      遇到了同样的问题,在我的manifest.xml 中使用以下行解决了这个问题

              <activity 
              ...
              android:configChanges="orientation|screenSize|keyboardHidden"
              />
      

      你可以试试这个:)

      【讨论】:

      • 我真的不想添加这个,因为我仍然希望我的应用在旋转时再次创建自己。
      猜你喜欢
      • 2014-07-14
      • 1970-01-01
      • 2013-12-03
      • 2014-07-06
      • 1970-01-01
      • 2012-10-16
      • 1970-01-01
      • 2014-06-07
      • 1970-01-01
      相关资源
      最近更新 更多