2016-08-16 4 views
0

Ich habe eine Arraylist, die mit dem Adapter aktualisiert werden muss. Ich habe keine Textviews dafür. Hier ist meine Code -Verwendung von Adapter für Listview

public class MyAdapter extends BaseAdapter { 

    private LayoutInflater inflater = null; 
    private ArrayList<MyClass> favouriteMessageList; 

    private MyAdapter(Activity activity, ArrayList list) { 
     favouriteMessageList = list; 
     inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     ViewHolder viewHolder; 
     MyClass favouriteMessage = favouriteMessageList.get(position); 

     if (convertView == null) { 
      convertView = inflater.inflate(R.layout.messaging_favorites_layout, null); 
      viewHolder = new ViewHolder(); 

      convertView.setTag(viewHolder); 
     }else{ 
      viewHolder = (ViewHolder) convertView.getTag(); 
     } 

     return convertView; 
    } 

    public void setData(ArrayList<MyClass> data) { 
     favouriteMessageList = data; 
     notifyDataSetChanged(); 
    } 
} 

Die setData Methode eine Arraylist erhalten und ich brauche die Ansicht mit meiner Arraylist zu füllen. Ich verwende eine viewHolder. Wie erreiche ich das?

+0

Ich verstehe nicht. Warum haben Sie keine TextViews? Und was versuchst du zu bekommen? – Vucko

+0

Wie benutzt man Textview in meinem Fall? –

Antwort

1

Versuchen wie folgt aus:

public class MyAdapter extends BaseAdapter { 

    private LayoutInflater inflater = null; 
    private ArrayList<MyClass> favouriteMessageList; 

    private MyAdapter(Activity activity, ArrayList list) { 
     favouriteMessageList = list; 
     inflater = (LayoutInflater) activity.getSystemService(Context.LAYOUT_INFLATER_SERVICE); 
    } 

    @Override 
    public View getView(int position, View convertView, ViewGroup parent) { 
     ViewHolder viewHolder; 
     MyClass favouriteMessage = favouriteMessageList.get(position); 

     if (convertView == null) { 
      convertView = inflater.inflate(R.layout.messaging_favorites_layout, null); 
      viewHolder = new ViewHolder(); 

      convertView.setTag(viewHolder); 
     } else { 
      viewHolder = (ViewHolder) convertView.getTag(); 
     } 
     //Update Your Views Here 
     return convertView; 
    } 

    @Override 
    public int getCount() { 
     if (favouriteMessageList != null) return favouriteMessageList.size(); 
     return 0; 
    } 

    public void setData(ArrayList<MyClass> data) { 
     favouriteMessageList = data; 
     notifyDataSetChanged(); 
    } 
} 
Verwandte Themen