我知道这应该很容易,但我真的不知道我做错了什么。
我想做类似伪代码的事情:
if EditText == "ed" {show.message "Hi"}
else {show.message "NOPE"}
//--[Boton Sumar 2]--
public void onBT_sumar2Click(View v) {
EditText e1 = (EditText)findViewById(R.id.ET_1);
EditText e2 = (EditText)findViewById(R.id.ET_2);
TextView t1 = (TextView)findViewById(R.id.TV_resultado);
if (e1.getText().equals("ed")){
Context context = getApplicationContext();
CharSequence text = ":V / hi :V /" ;
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
else {
Context context = getApplicationContext();
CharSequence text = "NOPE";
int duration = Toast.LENGTH_LONG;
Toast toast = Toast.makeText(context, text, duration);
toast.show();
}
}
答案 0 :(得分:4)
您应该将e1
的值转换为字符串以供比较。
尝试:
if (e1.getText().toString().equals("ed")) { ...
答案 1 :(得分:0)
e1.getText()返回一个可编辑对象。由于您尝试将字符串与不同类型的对象进行比较,因此该表达式的计算结果不等于,将始终返回false,并显示NOPE。
您必须使用toString()方法从Editable对象获取字符串值。