我的应用程序中有一些textview 并想检查我的textview上的文本属性是否具有值或null。 然后我想显示一个吐司,如果我的textview值为null
但吐司没有运行
这是我的代码:
public class brekeleV2 extends Activity {
static Context context;
brekeleV2Model r = new brekeleV2Model();
private EditText jalan, kota, postal;
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
context = getApplicationContext();
Button go = (Button)findViewById(R.id.go);
go.setOnClickListener(onGo);
Button reset = (Button)findViewById(R.id.reset);
reset.setOnClickListener(onRes);
jalan =(EditText)findViewById(R.id.jalan);
kota =(EditText)findViewById(R.id.kota);
postal =(EditText)findViewById(R.id.post);
jalan.setText(null);
kota.setText(null);
postal.setText(null);
}
这是onClick方法代码:
private View.OnClickListener onGo=new View.OnClickListener() {
public void onClick(View v) {
if (jalan.getText()!= null && kota.getText()!=null){
switch(v.getId()){
case R.id.go:
Intent maps = new Intent();
maps.setClassName("com.openit.brekele", "com.openit.brekele.brekeleV2Nav");
brekeleV2Nav.putLatLong(lat, lon);
startActivity(maps);
break;
}
}else{
Toast msg = Toast.makeText(brekeleV2.this, "Lengkapi Data", Toast.LENGTH_LONG);
msg.setGravity(Gravity.CENTER, msg.getXOffset() / 2, msg.getYOffset() / 2);
msg.show();
}
答案 0 :(得分:19)
if(!textview.getText().toString.matches(""))
{
// not null not empty
}else {
//null or empty
}
答案 1 :(得分:3)
最后我找到了解决问题的方法。这是我的代码:
if (jalan.getText().toString().length()>0 || kota.getText().toString().length()>0){
//switch(v.getId()){
//case R.id.go:
Intent maps = new Intent();
maps.setClassName("com.openit.razer", "com.openit.razer.mapRazerNav");
mapRazerNav.putLatLong(lat, lon);
startActivity(maps);
//break;
//}
}else{
Toast msg = Toast.makeText(razerNav.this, "Lengkapi Data", Toast.LENGTH_LONG);
msg.setGravity(Gravity.CENTER, msg.getXOffset() / 2, msg.getYOffset() / 2);
msg.show();
}
我习惯检查长度,因为在我的xml上我添加如下:
android:text=" "
见?这是我的错。 无论如何,谢谢你的帮助。 :)
答案 2 :(得分:3)
这就是我要用的。
if (mText1.getText().length() > 0 && mText2.getText().length() > 0) {
// Your code.
}
答案 3 :(得分:0)
请尝试textView.getText() != ""
。
答案 4 :(得分:0)
你确定调用了else条件吗?调试它!
也许您需要将吐司放入runOnUiThread语句中:
runOnUiThread(new Runnable() {
public void run() {
mText.setText("Hello there, " + name + "!");
}
});
答案 5 :(得分:0)
TextView中的方法getText()返回无法与String比较的EditAble 你应该使用String.ValueOf()方法将EditAble转换为String。
String jalanContent = String.ValueOf(jalan.getText());
if(jalanContent.equals(""){
//do your action here
} else {
//some action here
}
希望它有用
答案 6 :(得分:0)
if(jalan.getText()!= null&& kota.getText()!= null) 这是不适合您的代码行。 针对此类方案的最佳解决方案是对字符串
使用matches("")
方法
所以解决方案将是:
if (!jalan.getText().toString.matches("") && !kota.getText().toString().matches("")){
// code for not null textViews
}
else
{
//Code for nul textView
}
答案 7 :(得分:0)
我会稍微修改一下正确的答案(在()
之后缺少toString
,但是我们不允许编辑代码,所以:
if(textview.getText().toString().matches(""))
{
// is null or empty
}else {
//not null or empty
}
答案 8 :(得分:0)
TextView has a public length() method,您可以用来检查TextView中是否有任何字符。
if (textView.length() > 0) {
// textView is not null
} else {
// textView is null
}