这是我第一次尝试实施RecyclerView.我已经在类和类Callback之间实现了一个接口来处理UI元素(按钮)上的Click事件.我在获取对点击发生的引用时遇到问题.我可以单击列表中的第一个项目,但是我定义的操作是在我的回收站视图中的最后一个上执行的.我终于想通过我的界面传递这个位置,但是我很难理解如何从中获取对该viewholder的引用.AdapterViewHolderViewHolderButtonviewholder
public class RoomAdapter extends RecyclerView.Adapter<RoomAdapter.RoomViewHolder>
{
List<Room> mRooms;
public RoomAdapter(List<Room> rooms) {
mRooms = rooms;
}
@Override
public RoomViewHolder onCreateViewHolder(ViewGroup viewGroup, int i) {
final View viewItem = LayoutInflater
.from(viewGroup.getContext())
.inflate(R.layout.room_rv_item,viewGroup,false);
return vh = new RoomViewHolder(viewItem,new IRoomViewClick() {
@Override
public void editname(int pos) {
}
});
}
@Override
public void onBindViewHolder(RoomViewHolder roomViewHolder, int i) {
Room r = getItem(i);
roomViewHolder.label.setText(r.name);
}
public Room getItem(int position)
{
return mRooms.get(position);
}
@Override …Run Code Online (Sandbox Code Playgroud)