首页 新闻 会员 周边

android多层dialog底层自定义dialog怎么在点击之后消失?

0
悬赏园豆:200 [已解决问题] 解决于 2023-03-08 11:39

第一层dialog:设置、帮助、退出三个按钮
第二层dialog:是否确认对话框:
这样子:
view.findViewById(R.id.btn_set).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
final AlertDialog.Builder builder2 = new AlertDialog.Builder(MainActivity.this);
builder2.setTitle("是否进入设置界面")
.setPositiveButton("确认",set_onClickListener)
.setNegativeButton("取消", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
dialog.cancel();
}
}).show();

然后点击确认后跳转到第三个dialog,此时第二个是否确认的对话框在点击后消失了,但是第一个dialog仍然在底层未消失。

求问,该怎么让底层dialog消失?我知道有dissmiss()方法,但是不知道该怎么写,以及应该写在哪。。

if (keyCode == KeyEvent.KEYCODE_BACK
|| keyCode == KeyEvent.KEYCODE_DPAD_CENTER
|| keyCode == KeyEvent.KEYCODE_ENTER) {
View view = View.inflate(this,R.layout.dialog_system,null);
final AlertDialog.Builder builder1 = new AlertDialog.Builder(MainActivity.this)
.setView(view).setTitle("系统设置");
builder1.show();

以上代码是点击返回键弹出的第一层对话框。

(学习阶段,实在是不知道怎么写了,寻求各位大佬解答!感谢!)

Qooovo的主页 Qooovo | 初学一级 | 园豆:22
提问于:2023-02-08 14:51
< >
分享
最佳答案
0

extends Dialog 时,可以直接使用dismiss(), 因为dismiss() 是在 interface DialogInterface 中的,Dialog 直接 implements DialogInterface

收获园豆:200
人间春风意 | 老鸟四级 |园豆:2335 | 2023-02-08 15:01

我直接写在MainActivity里的,然后在show后面不知道怎么调用dismiss(),我总觉得是我思路的问题,我想统一写在一个一个类里,但是不会。。

Qooovo | 园豆:22 (初学一级) | 2023-02-08 15:06
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册