package net.reichholf.dreamdroid.adapter.recyclerview;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import net.reichholf.dreamdroid.helpers.ExtendedHashMap;
import java.util.ArrayList;
import java.util.HashMap;
/**
* Created by Stephan on 14.05.2015.
*/
public class SimpleTextAdapter extends BaseAdapter<SimpleTextAdapter.SimpleViewHolder> {
int mLayoutId;
int[] mIds;
String[] mKeys;
public SimpleTextAdapter(ArrayList<ExtendedHashMap> data, int layoutId, String[] keys, int[] ids) {
super(data);
mLayoutId = layoutId;
mIds = ids;
mKeys = keys;
}
@Override
public SimpleViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
LayoutInflater inflater = LayoutInflater.from(parent.getContext());
View itemView = inflater.inflate(mLayoutId, parent, false);
return new SimpleViewHolder(itemView, mIds);
}
@Override
public void onBindViewHolder(SimpleViewHolder holder, int position) {
for (int i = 0; i < mIds.length; ++i) {
TextView view = holder.getView(mIds[i]);
view.setText(mData.get(position).getString(mKeys[i]));
}
}
public class SimpleViewHolder extends RecyclerView.ViewHolder {
HashMap<Integer, TextView> mViews;
public SimpleViewHolder(View itemView, int[] ids) {
super(itemView);
mViews = new HashMap<>();
for (int id : ids) {
mViews.put(id, (TextView) itemView.findViewById(id));
}
}
public TextView getView(int id) {
return mViews.get(id);
}
}
}