2017-12-21 1 views
0

Also ich möchte das Datum des Tages hinzufügen, es wurde mit jedem Element in Listview eingegeben. Das Problem ist, dass ich nicht weiß, wie man Daten speichert, das Datum wird auf den aktuellen Tag aktualisiert, obwohl der Artikel gestern oder vor einer Woche eingegeben wurde. Wie speichern Sie Datumsangaben in Listenansichtselementen?

Dies ist der Code für Datum

Calendar cal = Calendar.getInstance(); 
    SimpleDateFormat month_date = new SimpleDateFormat("dd" + " MMM"); 
    String month_name = month_date.format(cal.getTime()); 

Dies ist der Code für Datum in Listview-Elemente eingegeben

while ((iterator2.hasNext())) { 
     String add = iterator2.next(); 
     conCat2.add("Added : " + add + " "+ month_name); 


    } 
+0

Es immer sein, speichern Sie das Datum auf Datenbank oder SharedPreferences? –

+2

Sie speichern * Daten * nie mit diesem Code. Und die Frage nach dem Speichern von etwas im Allgemeinen auf Android ist zu breit für die richtige Antwort. –

+0

Ja, es ist breit, deshalb frage ich speziell. Ich möchte Daten speichern, an denen die Artikel eingegeben wurden. Kannst du helfen? \ – user9127741

Antwort

1

java.time

Sie verwenden lästige alte Datum Zeitklassen das sind jetzt die java.time Klassen verdrängt. Ältere Android-Geräte finden Sie in den ThreeTen-Backport- und ThreeTenABP-Projekten. ohne Jahr

MonthDay Klasse

Verwenden Sie die MonthDay Klasse für ein Datum. Beachten Sie, dass java.time im Gegensatz zu den Legacy-Klassen für die Monate Januar bis Dezember eine einheitliche Monatsnummerierung verwendet.

MonthDay md = MonthDay.of(1 , 23) ; 

Oder mit dem Month Enum.

MonthDay md = MonthDay.of(Month.JANUARY , 23) ; 

LocalDate

Wenn Sie einen ganzen Tag mit Jahr gemeint, LocalDate verwenden.

LocalDate ld = LocalDate.of(2017 , 1 , 23) ; 
+0

Das ist nur Formatierung richtig? Ich möchte die Daten des Tages anzeigen, an dem die Artikel eingegeben wurden. – user9127741

0

Das Problem ist hauptsächlich Lagerung. Sie können das Datum irgendwo speichern, so dass Sie es nach Belieben holen können. Ihre Optionen sind tatsächlich breit. Sie können diese durch erreichen:

  • Mit dem Konzept der objektorientierten Programmierung und Serializable, können Sie eine Modellklasse mit Satz erstellen und Methoden für Ihr Datum erhalten, erstellen Objekte für jedes Element immer eingegeben werden, und speichern Sie dann das Objekt Gerätespeicher mit Serializable. Sie können dann abrufen, wenn Sie Ihre Listview laden, auf diese Weise wird Ihr Datum immer korrekt sein. Einmal eingestellt und der Wert des Datums ändert sich nie. Weitere Informationen zum Speichern von Daten im Gerätespeicher mit Serializable finden Sie in der Antwort zu dieser Frage: Object serialization in Java
  • Sie können in einer Online-Datenbank (z. B. Firebase) speichern und dann abrufen, wenn Sie sie benötigen. Ich rate Ihnen, Tutorials über die Verwendung von Firebase zu nehmen. Dieser Link: https://firebase.google.com/docs/database/android/start/ wird Ihnen einen Vorsprung geben.
  • In einer anderen Datenbank speichern.
Verwandte Themen