我正在使用带有cardview的recyclerview来显示我的数据 . 每张卡都有一个ImageView,当点击它时,会将该卡中的数据发送到收藏夹 . 我使用静态变量来获取单击ImageView的卡的数据 . 然后我将该静态变量的数据发送到我的收藏夹数据库 . 我的问题是,如果我点击两张或多张卡片的favoties图像视图,只有最后一张卡片的数据会保存在收藏夹中 . 这是因为每次单击imageview时,我的静态变量的值都会更新 . 如何获取多个值而不仅仅是我单击的最后一个imageview的值?

`public void onBindViewHolder(最终的SubCategoryHolder持有者,最终的int位置){

SubCategories s = subCategories.get(position);
    holder.subCategoryText.setText(s.getName());
    holder.subCategoryIdText.setText(s.getId());
    holder.likeImageView.setTag(R.drawable.ic_before_like);
    setFadeAnimation(holder.itemView);

    //handling like button
    holder.likeImageView.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {

            int id = (int) holder.likeImageView.getTag();
            if(id == R.drawable.ic_before_like){
                holder.likeImageView.setTag(R.drawable.ic_favorites);
                holder.likeImageView.setImageResource(R.drawable.ic_favorites);
                favoritesName = holder.subCategoryText.getText().toString();  // favoritesName is static
                favoritesId = holder.subCategoryIdText.getText().toString();  //favoritesId is static

            }else{
                holder.likeImageView.setTag(R.drawable.ic_before_like);
                holder.likeImageView.setImageResource(R.drawable.ic_before_like);
            }
        }
    });

}

`

//getting favorites data
    String favoritesName = SubCategoryAdapter.favoritesName; //assigning static value to favoritedsName here
    String favoritesId = SubCategoryAdapter.favoritesId; //assigning static value to favoritesId here

    //assigning the favorites data to Favorites database
    Favorites f = new Favorites();
    f.setFavoritesNames(favoritesName);
    f.setFavoritesId(favoritesId);



    //saving the assigned data
    if(favoritesName != null)
    {
        if(helper.save(f))
        {
            SubCategoryAdapter.favoritesName = null;
            SubCategoryAdapter.favoritesId = null;
        }
    }