package com.mobmonkey.mobmonkeyandroid.arrayadapters;
import com.mobmonkey.mobmonkeyandroid.R;
import com.mobmonkey.mobmonkeyandroid.arrayadaptersitems.MMTrendingItem;
import android.app.Activity;
import android.content.Context;
import android.graphics.Color;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.ArrayAdapter;
import android.widget.TextView;
public class MMTrendingArrayAdapter extends ArrayAdapter<MMTrendingItem> {
private static final String TAG = "MMTrendingAdapter: ";
private Context context;
private int layoutResourceId;
private MMTrendingItem data[] = null;
public MMTrendingArrayAdapter(Context context, int layoutResourceId, MMTrendingItem[] data) {
super(context, layoutResourceId, data);
this.layoutResourceId = layoutResourceId;
this.context = context;
this.data = data;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View row = convertView;
ViewHolder vholder;
if(row == null) {
LayoutInflater inflater = ((Activity)context).getLayoutInflater();
row = inflater.inflate(layoutResourceId, parent, false);
vholder = new ViewHolder();
try {
vholder.tvLabel = (TextView) row.findViewById(R.id.tvtrending);
vholder.tvCounter = (TextView) row.findViewById(R.id.trendingcounter);
} catch (NullPointerException ex) {
}
row.setTag(vholder);
} else {
vholder = (ViewHolder) row.getTag();
}
MMTrendingItem item = data[position];
vholder.tvLabel.setText(item.title);
if(item.counter > 0) {
vholder.tvLabel.setTextColor(Color.BLACK);
vholder.tvCounter.setVisibility(View.VISIBLE);
vholder.tvCounter.setText(Integer.toString(item.counter));
} else {
vholder.tvLabel.setTextColor(Color.GRAY);
vholder.tvCounter.setVisibility(View.INVISIBLE);
}
return row;
}
@Override
public boolean isEnabled(int position) {
if(data[position].counter > 0) {
return true;
} else {
return false;
}
}
private class ViewHolder {
TextView tvLabel;
TextView tvCounter;
}
}