都放进去。
在 holder 里放一个 Bean , item 的点击事件和显示都用这个 bean 的值, holder 里加个给 Bean 赋值的方法。
然后在 getView 里取得 holder 后调用赋值方法。大概是下边这样子。。假设有个 UserBean
@
Override public View getView(int position, View convertView, ViewGroup parent) {
UserBean mBean = list.get(position);
ViewHolder holder;
if (convertView != null) {
holder = (ViewHolder) convertView.getTag();
} else {
convertView = View.inflate(mContext, R.layout.item_tagfragment, null);
holder = new ViewHolder(convertView);
convertView.setTag(holder);
}
holder.updateBean(mBean);
holder.upDateView();
return convertView;
}
class ViewHolder {
@
Bind(R.id.tv_name)
TextView tv_name;
ViewHolder(View view) {
ButterKnife.bind(this, view);
tv_name.setOnClickListener(new View.OnClickListener() {
@
Override public void onClick(View view) {
mBean.xxxxxxxxxxxxxxxx;
}
});
}
private UserBean mBean;
public void updateBean(UserBean bean) {
this.mBean = bean;
}
public void upDateView() {
tv_name.setText(mBean.getUserName());
}
}