android 自动消失对话框,Android对话框自行消失

我正在使用以下代码创建自己的对话框:

public void ShowMessageDialog(String str){

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setMessage(str);

builder.setCancelable(false);

builder.setNeutralButton("Ok", new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

dialog.dismiss();

}

});

AlertDialog alert = builder.create();

alert.show();

}

它工作正常,但在此函数中使用时,它似乎会自动消失:

public void test(String str){

ShowMessageDialog("About to start new activity");

Intent intent = new Intent(this,PageViewer.class);

startActivity(intent);

}

似乎新活动已经创建并且显然摆脱了对话框.但为什么?在打开新活动之前,活动是否应该停止?

谢谢!

解决方法:

即将触发的意图不会等待您的对话框被取消.因此,在显示对话框后,将启动新的活动.你可以像这样完成你想要的东西:

public void ShowMessageDialog(String str){

AlertDialog.Builder builder = new AlertDialog.Builder(this);

builder.setMessage(str);

builder.setCancelable(false);

builder.setNeutralButton("Ok", new DialogInterface.OnClickListener() {

@Override

public void onClick(DialogInterface dialog, int which) {

dialog.dismiss();

Intent intent = new Intent(this,PageViewer.class);

startActivity(intent);

}

});

AlertDialog alert = builder.create();

alert.show();

}

public void test(String str){

ShowMessageDialog("About to start new activity");

}

标签:android,dialog

来源: https://codeday.me/bug/20190518/1127902.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值