Да, это может произойти, поскольку может быть возможность изменить состояние и положения прокрутки во время просмотра утилиты прокрутки.
вы используете ту же самую переменную prodQty
, и вы непосредственно используете viewHolder.edt_product_qty.setText("")
внутри нажатия кнопки, поэтому в этом случае ваш edt_product_qty
будет отличаться в зависимости от положения прокрутки.
Вы можете использовать android:freezesText="true"
в вашем текстовом редакторе количества в элементе списка.
Вы можете управлять им, добавляя мою позицию в виде метки на кнопку.
Для увеличения количества:
viewHolder.increase_product_qty.setTag(viewHolder.edt_product_qty);
viewHolder.increase_product_qty.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditText selEditText = (EditText) v.getTag();
final int qty = Integer.parseInt(selEditText.getText().toString()) + 1;
selEditText.setText(String.valueOf(qty));
}
});
Для уменьшения количества:
viewHolder.decrease_product_qty.setTag(viewHolder.edt_product_qty);
viewHolder.decrease_product_qty.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
EditText selEditText = (EditText) v.getTag();
final int qty = Integer.parseInt(selEditText.getText().toString()) - 1;
if (qty>1){
selEditText.setText(String.valueOf(qty));
}
}
});