package com.example.agathe.tsgtest.carpooling;
import android.content.Context;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.widget.BaseAdapter;
import android.widget.Button;
import android.widget.TextView;
import com.example.agathe.tsgtest.R;
import java.util.List;
/**
* Created by DanchaoGU on 2016/11/8.
*/
public class CardsAdapterCarpooling extends BaseAdapter {
private List<String> itemsName;
private List<String> itemsRelation;
private final OnClickListener itemButtonClickListener;
private final Context context;
public CardsAdapterCarpooling(Context context, List<String> itemsName, List<String> itemsRelation, OnClickListener itemButtonClickListener) {
this.context = context;
this.itemsName = itemsName;
this.itemsRelation = itemsRelation;
this.itemButtonClickListener = itemButtonClickListener;
}
@Override
public int getCount() {
return itemsName.size();
}
@Override
public String getItem(int position) {
return itemsName.get(position);
}
@Override
public long getItemId(int position) {
return position;
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
ViewHolder holder;
if (convertView == null) {
convertView = LayoutInflater.from(context).inflate(R.layout.list_item_card_carpooling, null);
holder = new ViewHolder();
holder.itemName = (TextView) convertView.findViewById(R.id.name);
holder.itemRelation = (TextView) convertView.findViewById(R.id.type_of_relation);
holder.itemButton = (Button) convertView.findViewById(R.id.list_item_card_button);
convertView.setTag(holder);
} else {
holder = (ViewHolder) convertView.getTag();
}
holder.itemName.setText(itemsName.get(position));
holder.itemRelation.setText(itemsRelation.get(position));
if (itemButtonClickListener != null) {
holder.itemButton.setOnClickListener(itemButtonClickListener);
}
return convertView;
}
private static class ViewHolder {
private TextView itemName;
private TextView itemRelation;
private Button itemButton;
}
}