[英]if condition error in android on button click listener
public class MainActivity extends Activity {
EditText t1,t2;
TextView v1,v2;
String username1 = "admin";
String password1 = "12345";
Button b1;
String user;
Context c;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
c = getApplicationContext();
t1 = (EditText) findViewById(R.id.editText1);
t2 = (EditText) findViewById(R.id.editText2);
b1 = (Button) findViewById(R.id.button1);
v1 = (TextView) findViewById(R.id.textView1);
v2 = (TextView) findViewById(R.id.textView2);
v1.setTextColor(Color.WHITE);
v2.setTextColor(Color.WHITE);
button();
}
public void button()
{
b1.setOnClickListener(new OnClickListener() {
public void onClick(View v) {
user = t1.getText().toString();
String pass = t2.getText().toString();
if(user == username1 && pass == password1)
{
Intent aa = new Intent(MainActivity.this, admin.class);
startActivity(aa);
}
else
{
Toast.makeText(c, "username or password is incorrect",Toast.LENGTH_LONG).show();
}
}
});
}
}
Every time else block will execute, if codition is true or wrong, whats the problem with this program and please tell me answer... 每次执行其他块时,如果编码是对还是错,此程序有什么问题,请告诉我答案...
if(user == username1 && pass == password1)
should be 应该
if(user.equals(username1) && pass.equals(password1))
This is because you're comparing String
object values . 这是因为您正在比较
String
对象的值 。
String comparisons are done by equals
operator. 字符串比较由
equals
运算符完成。 Try below code 试试下面的代码
if(user.equals(username1) && pass.equals(password1))
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.