package com.codeest.geeknews.ui.wechat.adapter;
import android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.TextView;
import com.codeest.geeknews.R;
import com.codeest.geeknews.app.Constants;
import com.codeest.geeknews.component.ImageLoader;
import com.codeest.geeknews.model.bean.WXItemBean;
import com.codeest.geeknews.ui.gank.activity.TechDetailActivity;
import com.codeest.geeknews.widget.SquareImageView;
import java.util.List;
import butterknife.BindView;
import butterknife.ButterKnife;
/**
* Created by codeest on 16/8/29.
*/
public class WechatAdapter extends RecyclerView.Adapter<WechatAdapter.ViewHolder>{
private Context mContext;
private LayoutInflater inflater;
private List<WXItemBean> mList;
public WechatAdapter(Context mContext,List<WXItemBean> mList) {
this.mContext = mContext;
this.mList = mList;
inflater = LayoutInflater.from(mContext);
}
@Override
public ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
return new ViewHolder(inflater.inflate(R.layout.item_wechat, parent, false));
}
@Override
public void onBindViewHolder(final ViewHolder holder, int position) {
ImageLoader.load(mContext,mList.get(position).getPicUrl(),holder.ivImage);
holder.tvTitle.setText(mList.get(position).getTitle());
holder.tvFrom.setText(mList.get(position).getDescription());
holder.tvTime.setText(mList.get(position).getCtime());
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
TechDetailActivity.launch(new TechDetailActivity.Builder()
.setContext(mContext)
.setId(mList.get(holder.getAdapterPosition()).getPicUrl())//wechat API 没有id,用图片来做唯一数据库索引
.setImgUrl(mList.get(holder.getAdapterPosition()).getPicUrl())
.setTitle(mList.get(holder.getAdapterPosition()).getTitle())
.setUrl(mList.get(holder.getAdapterPosition()).getUrl())
.setType(Constants.TYPE_WECHAT));
}
});
}
@Override
public int getItemCount() {
return mList.size();
}
public static class ViewHolder extends RecyclerView.ViewHolder {
@BindView(R.id.tv_wechat_item_title)
TextView tvTitle;
@BindView(R.id.tv_wechat_item_time)
TextView tvTime;
@BindView(R.id.tv_wechat_item_from)
TextView tvFrom;
@BindView(R.id.iv_wechat_item_image)
SquareImageView ivImage;
public ViewHolder(View itemView) {
super(itemView);
ButterKnife.bind(this,itemView);
}
}
}