从EditText获取String

时间:2011-01-30 05:20:02

标签: android if-statement android-edittext

login.setOnClickListener(new OnClickListener() {

        public void onClick(View v) {
            // TODO Auto-generated method stub
            if( username_text.getText().toString() == "admin" &&
                    pass_text.getText().toString() == "password"){

                startActivityForResult(i, ACTIVITY_CREATE);

            }else{
                Toast.makeText(gps_gui.this, "Your username or password is not correct! Please, insert again",
                        Toast.LENGTH_SHORT).show();
                clearEditText();
            }
        }

    });

我试着检查一下,我发现如果情况不行的话。

2 个答案:

答案 0 :(得分:29)

使用java时,必须使用String.equals(String)方法比较Strings。 ==比较检查以查看String对象值是否相等,毫无疑问它们不是。尝试将您的示例更改为:

"admin".equals(username_text.getText().toString()) &&"password".equals(pass_text.getText().toString())

如果要检查的值的字符串值为null,那么将静态字符串放在第一位也很聪明。

答案 1 :(得分:3)

使用String类的equals()方法来比较字符串。以下链接将为您提供更多详细信息。

About equals(Object yourObj) method (CASE sensitive)

如果你想让它不区分大小写,可以使用

equalsIgnoreCase(String yourStringObject)!