2017-05-23 4 views
-3
  package com.example.admin.accountbook; 

      import android.annotation.TargetApi; 
      import android.icu.util.Calendar; 
      import android.os.Build; 
      import android.support.v7.app.AppCompatActivity; 
      import android.os.Bundle; 
      import android.util.Log; 
      import android.widget.ArrayAdapter; 
      import android.widget.ListView; 
      import android.widget.Toast; 

       import java.text.SimpleDateFormat; 
      import java.util.ArrayList; 
       import java.util.Date; 

      public class Dates extends AppCompatActivity { 
      ListView dates; 
      Date dte; 
      ArrayList dt9 = new ArrayList(); 
      @TargetApi(Build.VERSION_CODES.N) 
      protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.activity_dates); 
      dates = (ListView)findViewById(R.id.dates); 
      ArrayAdapter da =new ArrayAdapter 
      (this,R.layout.support_simple_spinner_dropdown_item,dt9); 
      dates.setAdapter(da); 
      Calendar calendar = Calendar.getInstance(); 
      SimpleDateFormat formattedDate = new SimpleDateFormat("d/M/yyyy"); 
      try { 
       for (int a = 1; a <= 31; a++) 
       { 
       calendar.add(Calendar.DATE, -1); 
       dte = calendar.getTime(); 
       dt9.add(formattedDate.format(dte)); 
        da.notifyDataSetChanged(); 

      } 

      }catch(Exception e) 
      { 
       Log.e("output",e+""); 
       } 


      } 

Ich erhalte Liste der Termine in zu arraylist.But Listenansicht nicht jene dates.Listview Rückkehr bevölkert nur von gestern date.Getting Daten korrekt in zu Arraylist. Bitte helfen Sie mir . Vielen Dank im Voraus.Fehler beim Hinzufügen von Arraylist Artikeln zur Listenansicht

+0

Anruf 'da.notifyDataSetChanged() "out of for" -Schleife. – Piyush

+0

Ich habe versucht, aber nicht funktioniert – Devika

Antwort

0

Try Ändern

try { 
       for (int a = 1; a <= 31; a++) 
       { 
       calendar.add(Calendar.DATE, -1); 
       dte = calendar.getTime(); 
       dt9.add(formattedDate.format(dte)); 

      } 

     ArrayAdapter da =new ArrayAdapter(this,R.layout.support_simple_spinner_dropdown_item,dt9); 
      dates.setAdapter(da) 
    } 

Einstellen des Adapters wieder nach Daten bekommen wird Ihr Problem lösen.

+0

es funktioniert nicht – Devika

+0

Was ist der Fehler? –

+0

kein Fehler in logcat.but wenn ich versuche, Listview in Toast anzuzeigen ... es gibt mir einige msg wie android.widget.listview [.......]. Arraylist zeigt mir alle Daten, die ich brauchte. – Devika

0

Set Adapter wieder

try { 
    for (int a = 1; a <= 31; a++) 
    { 
     calendar.add(Calendar.DATE, -1); 
     dte = calendar.getTime(); 
     dt9.add(formattedDate.format(dte)); 
    } 
    ArrayAdapter da =new ArrayAdapter(this,R.layout.support_simple_spinner_dropdown_item,dt9); 
    dates.setAdapter(da); 

} catch(Exception e) 
{ 
    Log.e("output",e+""); 
} 
+0

es funktioniert nicht – Devika

0

Wenn Sie möchten, stammt aus dem ersten Tag des laufenden Monats zu aktuellem Datum anzuzeigen, dann können Sie unter Code versuchen:

Calendar calendar1 = Calendar.getInstance(); 
    Calendar calendar2 = Calendar.getInstance(); 

    ArrayList<String> dt9 = new ArrayList<>(); 

    calendar1.set(Calendar.DAY_OF_MONTH, 1); 
    SimpleDateFormat formattedDate = new SimpleDateFormat("d/M/yyyy"); 

    for (int i = 0; i < calendar2.get(Calendar.DAY_OF_MONTH); i++) { 
     Date date = calendar1.getTime(); 
     dt9.add(formattedDate.format(date)); 

     Log.d("kk", "onCreate: "+dt9.get(i)); 

     calendar1.add(Calendar.DATE, 1); 

    } 

    da.notifyDataSetChanged(); 
+0

es funktioniert nicht – Devika

Verwandte Themen