从另一个Recyclerview的选择中更改一个recyclerview中的值

时间:2016-11-05 09:49:07

标签: android android-recyclerview material-design recycler-adapter

我在同一个活动中有两个recyclerviews我希望在点击第二个RecyclerView项目后立即更改第一个项目的值

我已经能够检索第二个recyclerView

的选定值

enter image description here

我希望在选择颜色时更改银行图标

重新选择或选择新图标

时会发生变化

1 个答案:

答案 0 :(得分:2)

至于你的要求,你必须在你的两个recycleview持有者中使用onclicklistner并将回调传递给两个适配器。

你的回叫接口是:

PERM_REQUEST_CODE_DRAW_OVERLAYS

在您的主要活动中:

        interface Result(){
        public setposition(int position);
        }


         public BankAdapter(Context context,Arralist<Bank> mList,Result result){
         this.context=context;
         this.mList=mList;
         this.result=result;

         }


        private final OnClickListener mOnClickListener = new MyOnClickListener();

        @Override
        public MyViewHolder onCreateViewHolder(final ViewGroup parent, final int viewType) {
            View view = LayoutInflater.from(mContext).inflate(R.layout.myview, parent, false);
            view.setOnClickListener(mOnClickListener);
            return new MyViewHolder(view);
        }

        The onClick method:

        @Override
        public void onClick(final View view) {
            int itemPosition = mRecyclerView.getChildLayoutPosition(view);
            result.setposition(itemPosition);
        }

在ColorReycleView适配器中使用相同的代码来检测项目点击:

    private int selectedBank= -1;
    private BankAdapter bankAdapter;
    private ColorAdapter colorAdapter;

    bankAdapter=new BankAdapter(this, listBank, new Result(){
    @Override
    public void onClick(,int position) {
        selectedBank=position;
    }
    });

    bankRecyleView.setAdapter(bankAdapter);

希望它有所帮助。