java - 无法检查 AlertDialog.Builder 中 EditText 的值

标签 java android android-edittext android-alertdialog

我正在尝试检查我的 AlertDialog.Builder 中 EditText 的值,以便我可以防止用户在 EditText 中输入任何内容。

出于某种原因,当我使用下面的代码时,它永远不会进入 if (mEditText.getText() == null || test == "") 语句,它总是执行 else 语句相反。

有什么想法吗?谢谢大家。

    @Override
    protected Dialog onCreateDialog(int id) {

        LayoutInflater factory = LayoutInflater.from(mContext);
        final View textEntryView = factory.inflate(R.layout.file_save_dialog, null);
        mEditText = (EditText) textEntryView.findViewById(R.id.file_name_edit);
        final Animation shake = AnimationUtils.loadAnimation(this, R.anim.shake); 

        return new AlertDialog.Builder(mContext)
            .setIcon(android.R.drawable.ic_menu_save)
            .setTitle(R.string.file_name_title)
            .setView(textEntryView)
            .setPositiveButton(R.string.dialog_ok, new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                    String test = mEditText.getText().toString();

                    //This if never works...it always hits the else statement
                    if (mEditText.getText() == null || test == "") {
                        mEditText.startAnimation(shake);
                    }
                    else {
                        finish();
                    }

                }
            })
            .setNegativeButton(R.string.dialog_cancel, new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog, int whichButton) {
                    finish();
                }
            })
            .create();
    }

最佳答案

以 Android 方式进行:

if (TextUtils.isEmpty(mEditText.getText()) {
    mEditText.startAnimation(shake);
} else {
    finish();
}

关于java - 无法检查 AlertDialog.Builder 中 EditText 的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4359640/

相关文章:

java - 一个资深的 Java 程序员应该从哪里开始才能掌握 C?

java - 在Swing中,有没有办法从工具包中提取预定义的鼠标光标图像?

java - 主机查找的默认超时是多少?

android - 如何更改edittext的背景颜色

java - 当 EditText 输入时清除 TextView

java - 使用java单击按钮时交换两个 TextView 值

java - 服务在线程中运行

android - 为 ListView 中的项目设置边距

Android - 设置按下回车的 Action

android - 如何在Android中动态设置布局参数?