您的位置:首页 > 其它

自定义AlertDialog的创建和使用

2015-07-08 10:48 323 查看
填充视图

[code]View v = myActivity.this.getLayoutInflater().inflate(
                R.layout.dialog_nickname, null);


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

如果想要获得R.layout.dialog_nickname里的控件,就用

[code] v.findViewById(R.id.input_et);


创建dialog

[code]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
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: