onBindViewHolder 是 RecyclerView.Adapter 中的一個方法,它的主要作用是將數據綁定到 ViewHolder 上。當用戶與列表中的某個 item 交互時,onBindViewHolder 會被調用,以便更新 item 的顯示內容。然而,onBindViewHolder 本身并不直接處理用戶交互事件。
要處理用戶交互,你需要在 ViewHolder 中設置相應的監聽器。例如,如果你想在用戶點擊某個 item 時執行某個操作,你可以在 ViewHolder 中為 item 的根布局設置一個點擊監聽器,然后在監聽器的回調方法中處理用戶交互。
以下是一個簡單的示例:
public class MyViewHolder extends RecyclerView.ViewHolder implements View.OnClickListener {
public TextView textView;
public MyViewHolder(View itemView) {
super(itemView);
textView = itemView.findViewById(R.id.text_view);
itemView.setOnClickListener(this);
}
@Override
public void onClick(View view) {
// 處理用戶點擊事件
}
}
在這個示例中,我們在 MyViewHolder 的構造方法中為 itemView 設置了點擊監聽器,并實現了 View.OnClickListener 接口。當用戶點擊 item 時,onClick 方法會被調用,你可以在這個方法中處理用戶交互。