2010-12-14 3 views
0

I Android App arbeite, ich Anzeige verschiedene Arten von In My Listview.My ProblemWie kann ich überprüfen, Datumswerte in GetView Methode

i angezeigt haben 5 Einträge in die Listview-Werte sind Status, Gewünschtes Datum haben Response

Datum, Titel, können name.How Erforderliche Datumswerte ändern, ist kleiner als heute Datum Listenansicht

Hintergrundfarbe ist red.I kann unter Modell überprüfen. Farbe angezeigt wird, aber ich kann schnell

die Listenansicht Farbe blättern ist mir nicht stable.pls helfen .......

meine GetView:

public View getView(int position, View convertView, ViewGroup parent) { 
      View view = super.getView(position, convertView, parent); 
      HashMap<String, String> str=Action_module_screen.mylist.get(position); 
      String req=str.get("Req_date"); 
          Calendar c2 = Calendar.getInstance(); 
        Calendar c3 = Calendar.getInstance(); 
        Calendar c = Calendar.getInstance(); 
        int cyear = c.get(Calendar.YEAR); 
        int cmonth = c.get(Calendar.MONTH); 
        int cday = c.get(Calendar.DAY_OF_MONTH); 
        c2.set(cyear,cmonth,cday);  
         Locale l=new Locale(req); 
          Calendar c1 = Calendar.getInstance(l); 
          int cyear1 = c1.get(Calendar.YEAR); 
          int cmonth1 = c1.get(Calendar.MONTH); 
          int cday1 = c1.get(Calendar.DAY_OF_MONTH); 
          c3.set(cyear1,cmonth1,cday1);   


        String s=str.get("status"); 

      if((s.equals("CLO"))||(s.equals("APP"))||(s.equals("ANN"))||(s.equals("ANR"))||(s.equals("AOK"))) 
      { 
       view.setBackgroundColor(Color.GREEN); 
      } 
      if(s.equals("NEW")) 
      { 
       view.setBackgroundColor(Color.WHITE); 
      } 
      if(s.equals("REJ")) 
      { 
       view.setBackgroundColor(Color.GRAY); 
      } 

      if(c2.after(c3)) 
        { 
        view.setBackgroundColor(Color.RED); 
        } 


     return view; 

    } 

Antwort

0

Ich könnte falsch sein, aber Ich glaube, das Problem ist, dass Sie keine Standardhintergrundfarbe haben. Da die Ansichten wiederverwendet werden (über die convertView), könnten Sie den Hintergrund vorher auf RED gesetzt haben, und wenn Sie dann hier zurückkommen, können Sie die Farbe nicht auf den Standard zurücksetzen, was auch immer das sein soll. Natürlich bin ich nicht sicher, wie Ihre Daten aussehen, aber es scheint mir, dass es eine Möglichkeit gibt, dass keine Ihrer if-Klauseln übereinstimmen wird.

Verwandte Themen