package de.itemis.base;
import java.util.List;
import de.itemis.itemisapp.R;
import android.app.ListActivity;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
public class GenericItemAdapter extends ArrayAdapter<AbstractRowAdapter>{
private final ListActivity listActivity;
@SuppressWarnings("unchecked")
public GenericItemAdapter(ListActivity listActivity, List<? extends AbstractRowAdapter> items) {
// can given layout and widget id be omitted? won't be used anyway
super(listActivity, R.layout.list_item_image, R.id.text, (List<AbstractRowAdapter>) items);
this.listActivity = listActivity;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
AbstractRowAdapter item = getItem(position);
if (convertView == null) {
convertView = item.createView(listActivity);
convertView.setTag(item);
}
item.populateRowView(convertView, listActivity);
return convertView;
}
}