您的位置:首页 > 移动开发 > Android开发

Android关闭AlertDialog的方法

2016-01-21 09:38 477 查看
新手第一帖,大神们见笑了!希望大家补充更好的方法!!

最近写了个AlertDialog dialog对话框,通过android.app.AlertDialog.Builder builder = new AlertDialog.Builder(this);显示对话框,结果发现Builder没有dialog.cancel()和dismiss()方法关闭对话框。自己摸索出了一种关闭AlertDialog dialog对话框的方法。

直接上代码

builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("标题");
builder.setCancelable(false);//点击屏幕和返回键对话框不消失
RelativeLayout relativeLayout = (RelativeLayout) getLayoutInflater().inflate(R.layout.fist, null);
builder.setView(relativeLayout);
builder.setCancelable(false);
Button cancel = (Button) relativeLayout.findViewById(R.id.cancl);
Button ok = (Button) relativeLayout.findViewById(R.id.ok);
builder.create().show();


这样通过created()加show()方法弹出的对话框在使用builder.setCancelable(false)之后,本人尚未找的好的让对话框的方法。只能用dialog的dismiss()方法让对话框消失

代码如下

final Dialog dialog;
builder.setIcon(R.drawable.ic_launcher);
builder.setTitle("标题");
builder.setCancelable(false);//点击屏幕和返回键对话框不消失
RelativeLayout relativeLayout = (RelativeLayout) getLayoutInflater().inflate(R.layout.fist, null);
builder.setView(relativeLayout);
builder.setCancelable(false);
Button cancel = (Button) relativeLayout.findViewById(R.id.cancl);
Button ok = (Button) relativeLayout.findViewById(R.id.ok);
dialog = builder.show();
ok.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
// TODO Auto-generated method stub
dialog.dismiss();
}
});
dialog.show();


通过builder.show();可以使用dialog.cancel()和dismiss()方法关闭对话框。

一定不要忘了dialog.show();

当然也可以使用setNegativeButton,setPositiveButton和setNeutralButton,然后在里面添加监听事件用来关闭对话框。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: