在实际开发中,我们常常碰到这样的需求,需要在外部拿到RecyclerView 中的viewHoler,从而动态的修改UI,在RecyclerView中,我们需要自己封装点击事件,一般的做法是在recyclerview每一次bind的时候我们给viewholder的itemview注册监听事件,典型写法如下:

[java] view plain copy
@Override
public void onBindViewHolder(final MyHolder holder, final int position) {
Log.i("bind", list.size() + "");
holder.tv.setText(list.get(position));
if(listener != null)
{
holder.itemView.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
listener.onclick(holder,position,list.get(position));
}
});