繁体   English   中英

从回收者视图适配器到活动中获取价值

[英]Get value from recycler view Adapter to activity

我的布局如下。 我想在单击“继续”按钮后将所有数据从“数量视图”(从“+”和“-”按钮之间的文本视图)获取到我的活动中。

在此处输入图片说明

我尝试了几个答案,但无法得到预期的结果。 我能得到一些帮助吗? 我在适配器上添加了一个接口...

public interface OnItemClickListener {
    void onItemClick(String id, String amount);
}

public void setOnItemClickListener(OnItemClickListener listener) {
    this.listener = listener;
}

关于“数量视图”的数量变化,我试图从适配器获取数据到活动

holder.quantityView.setOnQuantityChangeListener(new QuantityView.OnQuantityChangeListener() {
        @Override
        public void onQuantityChanged(int oldQuantity, int newQuantity, boolean programmatically) {
            if (listener != null) {
                listener.onItemClick(pricingPOJO.getId(), newQuantity + "");
            }
        }

        @Override
        public void onLimitReached() {

        }
    });

将选定位置的地图维护到如下值:

Map<Integer, Integer> positionToValueMap = new HashMap<>();

然后在OnBindViewHolder执行以下操作:

获取您的价值,例如:

yourValue = positionToValueMap.get(getAdapterPosition());

将您的值设置为:

positionToValueMap.put(getAdapterPosition(), yourValue);

然后在适配器类中为positionToValueMap创建 getter 方法并从您的片段/活动调用 getter。 你都完成了。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM