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();
}
}
});
我试着检查一下,我发现如果情况不行的话。
答案 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)!