J'essaie d'actualiser un élément spécifique dans RecyclerView
.
Histoire: chaque fois que l'utilisateur clique sur l'élément, cela s'affiche AlertDialog
. L'utilisateur peut taper du texte en cliquant sur le bouton OK. Je veux afficher ce texte dans cet élément et afficher invisible ImageView
- déclaré en XML et adaptateur ViewHolder
-
J'ai utilisé cette fonction dans AlertDialog
Positive Button pour mettre à jour l'élément:
private void updateListItem(int position) {
View view = layoutManager.findViewByPosition(position);
ImageView medicineSelected = (ImageView) view.findViewById(R.id.medicine_selected);
medicineSelected.setVisibility(View.VISIBLE);
TextView orderQuantity = (TextView) view.findViewById(R.id.order_quantity);
orderQuantity.setVisibility(View.VISIBLE);
orderQuantity.setText(quantity + " packet added!");
medicinesArrayAdapter.notifyItemChanged(position);
}
Mais ce code modifie non seulement le itemView à la position passée, mais modifie également certains des autres itemView!
Comment dois-je modifier correctement un itemView spécifique en cliquant dessus?