自定义AlertDialog的创建和使用

来源:互联网 发布:时间轴源码 编辑:程序博客网 时间:2024/05/22 05:03
  1. 填充视图
View v = myActivity.this.getLayoutInflater().inflate(                R.layout.dialog_nickname, null);

其中R.layout.dialog_nickname是已经写好的布局文件,想要显示什么就再这个布局文件中添加控件。
如果想要获得R.layout.dialog_nickname里的控件,就用

 v.findViewById(R.id.input_et);
  1. 创建dialog
new AlertDialog.Builder(PersonInfoActivity.this)                .setView(v)                // .setTitle("编辑昵称")                .setPositiveButton("确定", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                        if (TextUtils.isEmpty(dialogNickName.getText())) {                            showToast("昵称不能为空");                        } else {                            // 如果点击确定时dialog里的昵称和原来的昵称                            if (!nickNameInfo_tv.getText().equals(                                    dialogNickName.getText())) {                                nickNameInfo_tv.setText(dialogNickName                                        .getText());                            }                        }                    }                })                .setNegativeButton("取消", new DialogInterface.OnClickListener() {                    @Override                    public void onClick(DialogInterface dialog, int which) {                    }                }).create().show();

这样点击确定按钮就能更改TextView里的昵称了
此外还有一些其他方法比较常用的
setTitle(title)
设置对话框的标题
dialog.setCanceledOnTouchOutside(false);
//设置点击Dialog外部任意区域关闭Dialog,false为不会关闭
LayoutInflater inflater = LayoutInflater.from(mContext);
//获得填充器
View dialogView = inflater.inflate(R.layout.dialog, null);
//填充视图到dialogView

0 0
原创粉丝点击