Почему мой просмотр списка не обновляет свой пользовательский интерфейс, когда я удаляю только один элемент из моего адаптера, который сохраняет текущий отображаемый элемент, но запись уже удалена из моего списка адаптер ..?Android Listview Adapter не обновляет/обновляет пользовательский интерфейс, когда я удалял только один элемент записи
Мой элемент Удалить работает, когда из моего адаптера сохраняется более одной записи, но когда я удалил все элементы, я сохранил последний элемент, который я удалил из пользовательского интерфейса.
Вот код, который я попытался обновить свой пользовательский интерфейс, но до сих пор не работает ... им с помощью SimpleAdapter
case PaymentModeCollection.CHECK:
//deletePaymentMode(arrListSet , paymentIdentity);
deletePaymentMode(arrCheck , paymentIdentity);
//checkEditOrAdd = true;
//arrCheck.remove(0);
myAdapter.notifyDataSetChanged();
//listView.refreshDrawableState();
//listView.invalidate();
//onPause();
//onResume();
break;
public SpecialAdapter(Context context, List<HashMap<String, String>> items, int resource, String[] from, int[] to) {
super(context, items, resource, from, to);
}
@Override
public View getView(int position, View convertView, ViewGroup parent) {
View view = super.getView(position, convertView, parent);
int colorPos = position % colors.length;
//if(!(view == null)){
view.setBackgroundColor(colors[colorPos]);
//}
return view;
}
Вот мой deletePaymentMode
protected static void deletePaymentMode(ArrayList<?> containerSetPaymentMode,String reference){//Set<ArrayList<?>> containerSetPaymentMode
/*
for(int i = 0; i <= containerSetPaymentMode.size() -1; i++){
if(containerSetPaymentMode.get(i) instanceof Cash){
}
if (containerSetPaymentMode.get(i) instanceof Check) {
Check tempCheck = (Check) containerSetPaymentMode.get(i);
if(tempCheck.getxCheckNo().contentEquals(reference)){
Log.d(TAG, "ITEM TO BE DELETE FOUND");
arrCheck.remove(i);
//break;
}
}
}
*/
Iterator<?> ia = containerSetPaymentMode.iterator();
while (ia.hasNext()) {
Object paymentObject = ia.next();
if (paymentObject instanceof Cash) {
ArrayList<Cash> tempArr = (ArrayList<Cash>) paymentObject;
} else if (paymentObject instanceof Check) {
Check tempCheck = (Check) paymentObject;
if(tempCheck.getxCheckNo().contentEquals(reference)){
ia.remove();
break;
}
Вы можете показать код метода deletePaymentMode() '? – hrskrs