AndroidRecyclerView的卡片菜单按钮的onClick事件无法与SelectionTracker共用
创始人
2024-10-09 17:32:20
0

要解决这个问题,我们需要在 RecyclerView.Adapter 中重写 onBindViewHolder 方法,并在 ViewHolder 中覆盖 setOnClickListener 方法。在 onBindViewHolder 方法中,我们需要将选定状态与 SelectionTracker 中的状态相匹配,并在 ViewHolder 中设置 onClickListener。

以下是示例代码:

public class MyAdapter extends RecyclerView.Adapter {

private SelectionTracker mSelectionTracker;

public MyAdapter(SelectionTracker selectionTracker) {
    this.mSelectionTracker = selectionTracker;
}

@Override
public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
    // create and return your view holder
    // ...
}

@Override
public void onBindViewHolder(MyViewHolder holder, int position) {
    holder.bindView(position);
    boolean isSelected = mSelectionTracker.isSelected((long) holder.getItemId());
    holder.itemView.setSelected(isSelected);
}

public class MyViewHolder extends RecyclerView.ViewHolder {
    CardView cardView;
    ImageButton menuButton;

    public MyViewHolder(View itemView) {
        super(itemView);
        cardView = itemView.findViewById(R.id.card_view);
        menuButton = itemView.findViewById(R.id.menu_button);

        menuButton.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View view) {
                // handle menu button click event
            }
        });
    }

    public void bindView(int position) {
        // bind data to view
        // ...
    }
}

}

在上面的示例中,ViewHolder 中的 menuButton 被设置为一个 onClickListener,当菜单按钮被单击时,我们可以根据需要处理事件。在 onBindViewHolder 中,我们可以从 SelectionTracker 获取当前项的选定状态,并在 ViewHolder 中将其与相应的状态匹配。

这样,在选择项目时,我们可以确保菜单按钮的 onClick 事件与 SelectionTracker 共用,从而展示完整的选择功能。

相关内容

热门资讯

据统计!pokemomo辅助软... 据统计!pokemomo辅助软件,八张透视辅助,演示教程(有挂细节)1、全新机制【八张透视辅助ai辅...
明白辅助挂!红龙poker作弊... 明白辅助挂!红龙poker作弊指令,奇迹脚本辅助,大纲教程(有挂方针)1、游戏颠覆性的策略玩法,独创...
目前!德州圈脚本,德普之星辅助... 目前!德州圈脚本,德普之星辅助器,积累教程(真的有挂)1、操作简单,无需德普之星辅助器手机版透视脚本...
相较于以往!智星菠萝有挂吗,来... 相较于以往!智星菠萝有挂吗,来来拼十辅助免费辅助,方针教程(存在有挂)1、首先打开来来拼十辅助免费辅...
据通报!德扑之心免费透视,广东... 据通报!德扑之心免费透视,广东雀神挂机怎么样,步骤教程(有挂方略)1、该软件可以轻松地帮助玩家将广东...
有玩家发现!aapoker真的... 有玩家发现!aapoker真的假的,闲聚辅助器,绝活儿教程(讲解有挂)1)闲聚辅助器免费钻石:进一步...
方法辅助挂!德州局脚本,博雅红... 方法辅助挂!德州局脚本,博雅红河西元红河挂,方式教程(有挂讲解)1、博雅红河西元红河挂免费辅助多个强...
有玩家发现!扑克之星辅助,jj... 有玩家发现!扑克之星辅助,jj斗地主外卦,讲义教程(有挂分析)1、进入到jj斗地主外卦是否有挂之后,...
黑科技辅助挂!hhpoker辅... 黑科技辅助挂!hhpoker辅助,陕麻圈辅助开挂软件,妙招教程(有挂详情);1、下载好陕麻圈辅助开挂...
为切实保障!epoker透视底... 为切实保障!epoker透视底牌,哈局八张辅助,总结教程(有挂方略)1、该软件可以轻松地帮助玩家将哈...