2012-01-23 143 views
5

我在我的應用程序 中有一些textview,並希望檢查我的textview上的文本屬性是否具有值或null。 然後我要顯示,如果空在我的TextView值Android - 如何檢查textview是否爲空或不爲空

但敬酒不運行敬酒,因爲它應該

這是我的代碼:

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

嘗試用textView.getText() != ""代替。

+0

如果在TextView的文字會是什麼「」? – TheLibrarianCz

16
if(!textview.getText().toString.matches("")) 
{ 
    // not null not empty 
}else { 
    //null or empty 
} 
+0

我嘗試,仍然沒有。工作。 這是我的代碼:(!jalan.getText()等於( 「!」。)&& kota.getText()等於( 「」)) 如果{ \t \t \t \t開關(v.getId()) { \t \t \t \t \t case R.id.去: \t \t \t \t \t \t意圖maps = new Intent(); \t \t \t \t \t \t maps.setClassName(「com.openit.razer」,「com.openit.razer.mapRazerNav」); \t \t \t \t \t \t mapRazerNav.putLatLong(lat,lon); \t \t \t \t \t \t startActivity(maps); \t \t \t \t \t \t break; \t \t \t \t \t \t \t \t \t \t} \t \t \t}否則{ \t \t \t \t吐司味精= Toast.makeText(razerNav.this 「Lengkapi數據」,Toast.LENGTH_LONG); \t \t \t \t msg.setGravity(Gravity.CENTER,msg.getXOffset()/ 2,msg.getYOffset()/ 2); \t \t \t \t msg.show(); \t \t \t} – DevYudh

+0

改變你的代碼的問題其自我..將是可讀的..將幫助更多的則 – AAnkit

+0

嘗試顯示了不設置重力麪包,或添加日誌here..have您嘗試過。我希望它會起作用 – AAnkit

0

你確定else條件被調用嗎?調試它!

也許你需要把烤麪包片成runOnUiThread聲明:

runOnUiThread(new Runnable() { 
    public void run() { 
     mText.setText("Hello there, " + name + "!"); 
    } 
}); 
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=" " 

看到了什麼?這是我的錯。 無論如何謝謝你幫助我。 :)

3

這是我會用。

if (mText1.getText().length() > 0 && mText2.getText().length() > 0) { 
    // Your code. 
} 
0
在TextView中

getText()方法返回編輯認爲不能用字符串 比較,你應該使用將String.valueOf()方法轉換編輯爲String。

String jalanContent = String.ValueOf(jalan.getText()); 
if(jalanContent.equals(""){ 
//do your action here 
} else { 
//some action here 
} 

希望它會是有用的

0

如果(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 
}