2016-09-29 149 views
-4

運行時,它與條件不匹配。
它跳過它並運行「else」塊。如果條件未評估

你能幫我嗎?

public class LoginActivity extends AppCompatActivity { 

private EditText usern; 
private EditText passw; 
private Button logButton; 

@Override 
protected void onCreate(Bundle savedInstanceState){ 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_login); 

    usern = (EditText) findViewById(R.id.userNameText); 
    passw = (EditText) findViewById(R.id.passwordText); 
    logButton = (Button) findViewById(R.id.loginButton); 

    logButton.setOnClickListener(new View.OnClickListener() { 

     @Override 
     public void onClick(View v) { 

      if(usern.getText().toString().equals("demo") && passw.getText().equals("demo")){ 
       Intent intent = new Intent(LoginActivity.this, MainActivity.class); 
       startActivity(intent); 
       Toast.makeText(getApplicationContext(), "Login...", Toast.LENGTH_SHORT).show(); 
      } 
      else{ 
       Toast.makeText(getApplicationContext(), "Username or password incorrect", Toast.LENGTH_SHORT).show(); 
      } 
     } 
    }); 
} 
} 
+2

詳細描述你的問題....什麼是預期的行爲什麼是實際行爲等... – Plirkee

回答

0

問題是此行中我想..你爲PASSW冷落了toString()

if(usern.getText().toString().equals("demo") && passw.getText().toString().equals("demo")){ 
        .... 

,而不是

if(usern.getText().toString().equals("demo") && passw.getText().equals("demo")){ 
        .... 
+1

我工作,謝謝。 – SpartanDark

+0

很高興它幫助:) – DriLLFreAK100

0

你忘了追加的toString()方法您的密碼EditText。

passw.getText().toString().equals("demo")) 
0

如果(usern.getText()。的toString()。等於( 「演示」)& & passw.getText()。等於( 「演示」))

請檢查密碼狀態檢查。你錯過了.toString()。

使用如下代碼,

如果(usern.getText()。的toString()。等於( 「演示」)& & passw.getText()。的toString()。等於( 「演示」) )