Я создал корзину с продуктом и количеством в хэш-карте.Если конкретный элемент удаляется из корзины с помощью функции onSwiped, как мне обновить хэш-карту?Как передать хэш-карту в ItemTouchHelper, чтобы я мог определить значение ключа, связанное с перевернутым (удаленным) viewHolder (позиция адаптера)?
В настоящий момент изменения количеств или новых элементов обновляются в хэш-карте,Я передаю этот hashmap в функцию mapToArray, указанную для обновления итоговой суммы.Итак, я хочу проанализировать хэш-карту, найти удаленный элемент, установить его соответствующее количество на ноль, а затем отправить его в mapToArray.
private int mapToArray(HashMap selectionItemsHashMap) {
selectionItemArrayList = null;
selectionItemArrayList = new ArrayList<>();
String selectionPrice = null;
int amountTotal = 0;
for (Object name: selectionItemsHashMap.keySet()){
String key = (String) name;
for (int j =0; j < menuItemArrayList.size(); j++ ) {
String findName = menuItemArrayList.get(j).getMenuItemName();
if (key.equals(findName)) {
selectionPrice = menuItemArrayList.get(j).getMenuItemPrice();
}
}
int value = (int) selectionItemsHashMap.get(name);
amountTotal += Integer.parseInt(selectionPrice)*value;
String stringAmountTotal = Integer.toString(amountTotal);
tvTotalAmount.setText(stringAmountTotal);
SelectionItem selectionItem = new SelectionItem( key, value, selectionPrice);
selectionItemArrayList.add(selectionItem);
}
return amountTotal;
}