2016-09-29 103 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()。等于( “演示”) )