0
我正在制作一个简单的密码应用程序。为什么我的if语句没有执行并显示Toast?
就像我在VB中做的那样。
我有我的代码
package com.example.password;
import android.widget.*;
import com.example.password.R;
import android.os.Bundle;
import android.app.Activity;
import android.view.Menu;
import android.view.View;
import android.view.View.OnClickListener;
public class MainActivity extends Activity {
Button btn1;
EditText et1;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
btn1 = (Button) findViewById(R.id.button1);
et1 = (EditText) findViewById(R.id.editText1);
btn1.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
if ("u" == et1.getText().toString()){
Toast.makeText(MainActivity.this, "Yay!! GOOD GUESS", Toast.LENGTH_LONG).show();
}
}
});
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; his adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}
没有编译或运行时错误,但我没有得到任何Toast
弹出时,我得到了“密码”的权利。
感谢一大堆打交道时!所以我应该总是使用这种方法? – user2130068 2013-03-04 02:51:07
当检查String的值是否相等时,是的!当我放入我的编辑时,你的方式会检查它们是否是同一个对象,但不一定是相同的值。欢迎您使用BUNCH! :) – codeMagic 2013-03-04 02:52:02
道具为你避开NPE的第一种方式。我会说坚持 – ElefantPhace 2013-03-04 02:53:16