【发布时间】:2015-12-14 10:49:26
【问题描述】:
在我的活动中,我正在打开一个弹出窗口(警报对话框),其中包含“是”和“否”选项。但是,当我在窗口外或屏幕中的任何位置单击时,弹出窗口将被关闭。如何通过单击任意位置来防止弹出窗口关闭。我希望它只在我输入“否”按钮时关闭。请帮忙!!!
这是 MainActivity.java 中的弹出代码
Handler handler = new Handler();
handler.postDelayed(new Runnable() {
@Override
public void run() {
if (context != null) {
AlertDialog.Builder alert = new AlertDialog.Builder(context, R.style.MyAlertDialogStyle)
.setTitle("Title")
.setMessage("Message")
.setPositiveButton(R.string.yes, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialog, int which) {
// continue with delete
Intent intent = new Intent(MainActivity.this, WebActivity.class);
startActivity(intent);
}
})
.setNegativeButton(R.string.no, new DialogInterface.OnClickListener() {
public void onClick(DialogInterface dialogInterface, int which) {
dialogInterface.dismiss();
// do nothing
}
});
mDialog = alert.create();
mDialog.getWindow().getAttributes().windowAnimations = R.style.MyAlertDialogStyle;
if (!((Activity) context).isFinishing())
mDialog.show();
// .setIcon(R.drawable.inr1)
// .show();
}
}
}, 15000);
【问题讨论】:
-
也许 .setCancelable(false) 到 AlertDialog.Builder?
-
@RaviRupareliya 在哪里使用这个命令?在 Handler 之外或就在 mDialog.show() 的下方; ???
标签: android android-fragments android-intent android-activity popup