没有合适的资源?快使用搜索试试~ 我知道了~
温馨提示
试读
2页
Android 中RecycleView实现item的点击事件 RecycleView现在已经越来越受到大家的重视,因为他既可以代替listView还可以代替GridView,但是RecycleView本身不不像ListView那样具有setOnItemClickListener,这个关于子item的点击,但是我们往往会用到RecycleView并且希望他的自孩子可以被点击,那么如何实现他的item的点击事件呢? 首先我们在RecyclerView.ViewHolder中的实现: public class GridViewHolder extends RecyclerView.ViewH
资源详情
资源评论
资源推荐
Android 中中RecycleView实现实现item的点击事件的点击事件
Android 中中RecycleView实现实现item的点击事件的点击事件
RecycleView现在已经越来越受到大家的重视,因为他既可以代替listView还可以代替GridView,但是RecycleView本身不不像
ListView那样具有setOnItemClickListener,这个关于子item的点击,但是我们往往会用到RecycleView并且希望他的自孩子可以
被点击,那么如何实现他的item的点击事件呢?
首先我们在RecyclerView.ViewHolder中的实现:
public class GridViewHolder extends RecyclerView.ViewHolder implements OnClickListener{
//声明MyItemClickListener
private MyItemClickListener mListener;
public GridViewHolder(View rootView,MyItemClickListener listener) {
super(rootView);
this.mListener = listener;
rootView.setOnClickListener(this);
}
@Override
public void onClick(View v) {
//如果mListener不为空,就实现接口中的方法onItemClick其中getPosition()是得到被点击位置的position
if(mListener != null){
mListener.onItemClick(v,getPosition());
}
}
//声明MyItemClickListener这个接口
public interface MyItemClickListener {
public void onItemClick(View view,int postion);
}
}
最后在RecyclerViewAdapter中实现:
package com.ledon.activity.adapter;
import Java.util.ArrayList;
import java.util.List;
import com.ledon.activity.adapter.GridViewHolder.MyItemClickListener;
import com.ledon.ledongym.R;
import com.lidroid.xutils.BitmapUtils;
import Android.content.Context;
import android.support.v7.widget.RecyclerView;
import android.text.TextUtils;
import android.view.LayoutInflater;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
public class RecyclerViewAdapter extends RecyclerView.Adapter<GridViewHolder> {
private final List<String> labels;
private LayoutInflater mLayoutInflater;
private Context context;
private MyItemClickListener mItemClickListener;
public RecyclerViewAdapter(int count, Context context) {
this.labels = new ArrayList<String>(count);
mLayoutInflater = LayoutInflater.from(context);
for (int i = 0; i < count; i++) {
labels.add(String.valueOf(i));
}
}
@Override
weixin_38733333
- 粉丝: 4
- 资源: 923
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功
评论0