class EntryAdapter extends BaseAdapter {
public static final int TYPE_COUNT = 2;
private static final int TYPE_TIPS = 0;
private static final int TYPE_EVENT = 1;
private Context context;
private List<Entry> entries;
public EntryAdapter(Context context, List<Entry> entries) {
this.context = context;
this.entries = entries;
}
@Override
public int getCount() {
return entries.size() + 1;
}
@Override
public Object getItem(int position) {
Object item = null;
if (entries != null && !entries.isEmpty()) {
if (position == 0) {
Entry entry = entries.get(0);
if (entry != null) {
item = entry.getMagictouchs();
}
} else {
item = entries.get(position - 1);
}
}
return item;
}
@Override
public long getItemId(int i) {
return i;
}
@Override
public View getView(int position, View view, ViewGroup viewGroup) {
int viewType = getItemViewType(position);
switch (viewType) {
case TYPE_TIPS: {
// Creating view for tips
break;
}
case TYPE_EVENT: {
// Creating view entry
break;
}
}
return view;
}
@Override
public int getItemViewType(int position) {
return position == 0 ? TYPE_TIPS : TYPE_EVENT;
}
@Override
public int getViewTypeCount() {
return TYPE_COUNT;
}
}