返回活动时会显示“关闭”对话框,

时间:2011-06-08 13:12:19

标签: android dialog

我有举动提醒警报对话。 接下来,我关闭对话框并使用Intent启动一个新的Activity。对话框被关闭,对话框的onStop和onDismissDialog回调被通知,新活动已打开。

当我完成第二个活动时(通过调用Activity.finigh()或使用adb终止proccess)会出现问题。第一个活动再次显示但对话框仍在那里。

如果用户通过按回退出第二个活动,则不会发生这种情况。

示例代码为:

public class FirstActivity extends Activity {

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    setContentView(R.layout.main);

    AlertDialog.Builder builder = new AlertDialog.Builder(this);
    builder.setMessage("Dialog title").setPositiveButton(
            "Open new activity", new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int id) {
                    dialog.dismiss();
                    Intent i = new Intent(FirstActivity.this,
                            SecondActivity.class);
                    startActivity(i);
                }
            });

    builder.create().show();

}
}

我尝试使用Activity.showDialog()和Activity.dismissDialog()打开并关闭对话框,但它的工作方式相同,

我做错了什么?任何想法??

谢谢

2 个答案:

答案 0 :(得分:0)

试试dismiss();代替dialog.dismiss();

答案 1 :(得分:0)

你在onCreate()方法中的最后一个语句有一个链式调用,最后一个调用是“show()”...我建议你删除它,因为每次你创建你正在创建的Activity并显示对话框

将对话框创建语句移动到onCreateDialog()方法。如果要显示它,请调用“showDialog()”。