普通的对话框 AlertDialog

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了普通的对话框 AlertDialog相关的知识,希望对你有一定的参考价值。

技术分享

private void showSetPswDialog() {
        AlertDialog.Builder builder = new Builder(this);
        // 将设置密码对话框界面,搭建成布局,添加到dialog中显示
        View view = View.inflate(this, R.layout.home_dialog_setpsw, null);

        // 初始化控件,进行功能实现
        final EditText mPsw = (EditText) view.findViewById(R.id.dialog_et_psw);
        final EditText mConfirm = (EditText) view
                .findViewById(R.id.dialog_et_confirm);
        Button mOk = (Button) view.findViewById(R.id.dialog_btn_ok);
        Button mCancel = (Button) view.findViewById(R.id.dialog_btn_cancel);

        // 设置按钮点击事件进行操作
        mOk.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                // 1.获取输入的密码,判断密码是否为空
                String psw = mPsw.getText().toString().trim();
                if (TextUtils.isEmpty(psw)) {
                    Toast.makeText(HomeActivity.this, "密码不能为空", 0).show();
                    // 密码为空不能执行其他操作
                    return;
                }
                // 2.获取再次输入的密码,判断两次密码是否一致
                String confirm = mConfirm.getText().toString().trim();
                if (psw.equals(confirm)) {
                    // 一致,密码设置成功,隐藏对话框
                    Toast.makeText(HomeActivity.this, "密码设置成功", 0).show();
                    alertDialog.dismiss();
                    // 保存密码,方便判断是弹出设置密码对话框还是密码验证对话框
                    SharedPreferencesTool.saveString(HomeActivity.this,
                            Constants.SETPSW, MD5Tool.md5(psw));
                } else {
                    // 不一致,提醒用户两次密码不一致
                    Toast.makeText(HomeActivity.this, "两次密码不一致", 0).show();
                }
            }
        });

        mCancel.setOnClickListener(new OnClickListener() {

            @Override
            public void onClick(View v) {
                alertDialog.dismiss();
            }
        });

        builder.setView(view);// 将一个view对象添加到dialog中显示
        // 显示dialog
        // builder.show();
        alertDialog = builder.create();
        alertDialog.show();
    }

 

以上是关于普通的对话框 AlertDialog的主要内容,如果未能解决你的问题,请参考以下文章

无法在片段内创建对话框

Android中的AlertDialog(警告对话框)

Android Dialog 普通对话框 单选对话框 多选对话框

AlertDialog的解析

片段对话框中的片段膨胀引发错误“片段未创建视图”

Android中的普通对话框单选对话框多选对话框带Icon的对话框以及自定义Adapter和自定义View对话框详解