最近一直在使用RecyclerView发现并没有item的点击监听,于是去百度,网上各种实现方式,于是自己进行研究,发现了一种超简单实现方案,我在想既然每一个item都是一个view,那是不是可以给每一个item添加一个父容器,然后赋予id,在viewholder中给其click监听,在让viewholder实现其接口!以下是代码实现
class WinAadpter extends RecyclerView.Adapter<WinAadpter.ViewHolder>{
@Override
public WinAadpter.ViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
}
@Override
public void onBindViewHolder(final WinAadpter.ViewHolder holder, int position) {
}
@Override
public int getItemCount() {
}
public class ViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener{
public ViewHolder(View itemView) {
super(itemView);
LinearLayout mWinngll = (LinearLayout) itemView.findViewById(R.id.winning_ll);
mWinngll.setOnClickListener(this);
}
@Override
public void onClick(View v) {
switch (v.getId()){
case R.id.winning_ll:
Toast.makeText(getActivity(),getPosition()+"",Toast.LENGTH_SHORT).show();
}
}
}
进行测试方案可行,是不是很简单!点个赞吧!