package org.ecomap.android.app.utils;
import android.content.Context;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.ImageView;
import android.widget.TextView;
import org.ecomap.android.app.Problem;
import org.ecomap.android.app.R;
import org.ecomap.android.app.tabs.Top10Tab;
import java.util.List;
public class top10Adapter extends BaseAdapter {
private String LOG_TAG = top10Adapter.class.getSimpleName();
private final List<Problem> rowItems;
private final LayoutInflater lInflater;
private final int tabId; //0 - votes, 1 - rates, 2 - comments
public top10Adapter(Context context, List<Problem> rowItems, int tabId) {
this.rowItems = rowItems;
this.tabId = tabId;
lInflater = (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
Log.d(Top10Tab.class.getSimpleName(), "top10Adapter: " + tabId);
}
@Override
public int getCount() {
return rowItems.size();
}
@Override
public Object getItem(int position) {
return rowItems.get(position);
}
@Override
public long getItemId(int position) {
return rowItems.indexOf(getItem(position));
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = convertView;
if (view == null) {
view = lInflater.inflate(R.layout.top10_list_item, parent, false);
}
Problem problem = (Problem) getItem(position);
((TextView) view.findViewById(R.id.textView1)).setText(problem.getTitle());
//Log.d(LOG_TAG, "getView: " + tabId + " likes:" + problem.getNumberOfLikes() + " rates:" + problem.getSeverity() + " comments: " + problem.getNumber_of_comments());
switch (tabId) {
case 0:
((ImageView) view.findViewById(R.id.show_like)).setImageResource(R.mipmap.heart_black);
((TextView) view.findViewById(R.id.numVotes)).setText(problem.getNumberOfLikes());
break;
case 1:
((ImageView) view.findViewById(R.id.show_like)).setImageResource(R.mipmap.star_black);
((TextView) view.findViewById(R.id.numVotes)).setText(problem.getSeverity());
break;
case 2:
((ImageView) view.findViewById(R.id.show_like)).setImageResource(R.mipmap.comments_black);
((TextView) view.findViewById(R.id.numVotes)).setText(String.valueOf(problem.getNumber_of_comments()));
break;
}
return view;
}
}