Android EditText值错误?

时间:2014-10-10 20:49:16

标签: java android android-edittext

我正在测试android上的一些东西作为初学者,并试图在单击按钮时获取在EditText中输入的值,然后将其与我在类中定义的字符串值进行比较,然后使用if(EditText == stringDefined)else(),但是即使输入了正确的文本,我的代码也总是跳到else部分,感谢任何帮助。这是代码:

Button mButton;
EditText mEdit1;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_login);
    final String user = "admin";

    mButton = (Button)findViewById(R.id.BTN_login);
    mEdit1   = (EditText)findViewById(R.id.editText1);


    mButton.setOnClickListener(
            new View.OnClickListener()
            {
                public void onClick(View view)
                {
                    String userEntered = mEdit1.getText().toString().trim();

                    Intent intent = new Intent(Login.this, Success.class);
                    if(userEntered == user){
                        startActivity(intent);
                    }

                    else{
                        AlertDialog.Builder errAlert = new AlertDialog.Builder(Login.this);
                        errAlert.setTitle("Wrong Credentials");
                        errAlert.setMessage("Wrong username");
                        errAlert.setCancelable(true);
                        errAlert.show();
                    }
                }
            });
}

2 个答案:

答案 0 :(得分:0)

使用equals方法:

if(userEntered.equals(user)){
    startActivity(intent);
}

答案 1 :(得分:0)

==用于比较基本类型,equals()类的java.lang.String方法比较内容。