2017-09-04 22 views
-2

Ich zeige ein Datum in einem TextView an. Es funktioniert alles gut, wenn es ein Datum gibt. Aber wenn kein Datum gewählt wird oder wenn die TextView leer ist (es gibt einen Hinweis "dd-mm-yyyy"), stürzt die App ab. Ich suche nach leerem TextView wie folgt: if (textview.setText(). ToString(). IsEmpty()) {// show error} kann mir jemand helfen, was ich falsch mache?Überprüfen, ob TextView leer ist?

Initialisierung von Textview und TextInputlayout:

tv_Current_Date = (TextView) findViewById(R.id.tv_Current_Date); 
til_Current_Date = (TextInputLayout) findViewById(R.id.til_Current_Date); 

hier ist der Code für Absturz:

if (tv_Current_Date.getText().toString().isEmpty()) { 
       til_Current_Date.setError("Please choose a date"); 
      } 

Methode, um Datum:

public void setCurrentDateOnView() { 
    String dateFormat = "dd-MM-yyyy"; 
    SimpleDateFormat simpleDateFormat = new SimpleDateFormat(dateFormat, Locale.US); 
    tv_Current_Date = (TextView) findViewById(R.id.tv_Current_Date); 
    tv_Current_Date.setText(simpleDateFormat.format(calendar_now.getTime())); 
    String short_weekday = new DateFormatSymbols().getShortWeekdays()[day_of_current_week]; 
    tv_Current_weekday.setText(short_weekday); 
} 
+0

auch den Teil hinzufügen, in dem Sie til_Current_Date falls definieren es ist, gibt es das Problem mit . – Juan

+0

Welchen Crash hast du erhalten? –

+0

Ich habe meinen Code @Juan editiert. Die App wurde gestoppt - an_droid_dev. – Cjsparrow

Antwort

1

versuchen, diese

if (tv_Current_Date.getText().toString().equals("")) { 
     til_Current_Date.setError("Please choose a date"); 
} 
+1

Danke für Ihre Mitarbeit. Eigentlich war das Problem, das TextView zu initialisieren. Jetzt habe ich es korrigiert, und mein Code funktioniert gut – Cjsparrow

0

Versuchen Sie, diese

if(tv_Current_Date.getText().toString().equals("") && tv_Current_Date.getText().length() <= 0){ 
    tv_Current_Date.setError("your message"); 
} 
+0

Danke für Ihre Mitarbeit. Eigentlich war das Problem, das TextView zu initialisieren. Jetzt habe ich es korrigiert, und mein Code funktioniert gut. – Cjsparrow