2017-04-16 2 views
1

Vor allem lassen Sie mich sagen, dass ja, ich habe recherchiert ziemlich viel und verwendet eine Vielzahl von Lösungen, aber nichts funktioniert.Android - Getting date in textview

Also ich versuche, das gestrige Datum in eine Textansicht zu bekommen. Ich verwende diesen Code:

Calendar cal = Calendar.getInstance(); 
SimpleDateFormat sdf = new SimpleDateFormat("yyyy/MMMM/d"); 
String strDate = sdf.format(cal.getTime()); 
tvDate.setText(strDate); 

(Ich weiß, das heutige Datum zurückgibt, aber an diesem Punkt Ich versuche nur, alles zu bekommen)

Was passiert, ist, wenn ich aus der früheren Tätigkeit bekommen dieses schließt es sofort ab. Wenn ich die 3 Zeilen in der Mitte kommentiere und Text auf eine zufällige Zeichenfolge wie "bla bla" setze, läuft die Aktivität und zeigt sie korrekt an. Android Studio zeigt keine Fehler an, daher habe ich keine Ahnung, was passiert.

Ich habe alle Lösungen in den folgenden Posts versucht, alle erfolglos, so kann ich nur vorstellen, es gibt einige Konfigurationen, die ich vermisse. 1-Android get current date and show it in TextView 2-Get current time and date on Android 3 - Display the current time and date in an Android application

Ich habe auch überprüft, einige Youtube-Videos, aber keiner hatte die Antwort.

Können Sie helfen?

+0

Ich denke, dass das Problem in Ihrem 'SimpleDateFormat' ist –

+0

Sie haben ein 'd' geschrieben, ist das richtig, da es möglich ist, dass der Tag aus zwei Zahlen besteht –

+0

Im Android-Monitor sollten Sie den Stack-Trace haben, um zu sehen, welche Ausnahme ausgelöst wird. Bitte posten Sie das oder geben Sie weitere Informationen zu der Aktivität an, in der Sie diesen Code haben. – Juan

Antwort

1

Ich habe Ihren Code getestet und es funktioniert gut für mich, 2017/April/16 zurückgegeben. Stellen Sie sicher, dass Ihre import-Anweisungen oben in Ihrer Klassendatei korrekt sind. Sie sollten sein:

import java.text.SimpleDateFormat; 
import java.util.Calendar; 

Um das gestrige Datum, fügen Sie die folgende Zeile zu erhalten:

cal.add(Calendar.DATE, -1); 
+0

das war es! Meine Importe waren 'import android.icu.text.SimpleDateFormat; importieren Sie android.icu.util.Calendar; 'Diese wurden automatisch von Android Studio hinzugefügt – ruiBarbs

0

Bitte überprüfen Sie den Code unten

import java.util.Date; 
import java.util.Calendar; 

public class Main{ 

public static void main(String ar[]){ 
Calendar cal = Calendar.getInstance(); 

System.out.println("Today's date= "+cal.getTime()); 
//subtracting a day 
cal.add(Calendar.DATE, -1); 
System.out.println("Yesterday's date= "+cal.getTime()); 

} 

}