RecyclerView添加點擊事件

有關RecyclerView的用法java

Android滾動組件RecyclerView 的用法

RecyclerView添加點擊監聽第一種方法:ide

在自定義的Adapter中的,onBindViewHolder方法中設置函數

@Override
    public void onBindViewHolder(LinearViewHolder holder, int position) {
        //將條目信息設置上
        Student stu = (Student) mList.get(position);
        holder.idTv.setText(""+stu.getId());
        holder.nameTv.setText(stu.getName());
        //添加點擊監聽事件
        holder.itemView.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                Toast.makeText(mContext, "我被點擊了", Toast.LENGTH_SHORT).show();
            }
        });
    }

第二種方法:經過回調post

在自定義的Adapter中建立一個接口this

//而後聲明 private OnItemClickListener listener;
//而後建立構造函數,傳入一個listener
//而後在onBindViewHolder方法中將postion傳入進去,以下
/*
holder.itemView.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        listener.onClick(position);
    }
});
*/
//而後再外面,參數中傳入new ..
public interface OnItemClickListener{

    void onClick(int pos);

}
recyclerView.setAdapter(new LinearAdapter(this, ls,
                new LinearAdapter.OnItemClickListener() {
                    @Override
                    public void onClick(int pos) {
                        Toast.makeText(RecyclerActivity.this, "點擊了"+pos, 
                             Toast.LENGTH_SHORT).show();
                    }
                }));
相關文章
相關標籤/搜索