Удаление элементов из ListAdapter не работает - PullRequest
0 голосов
/ 01 сентября 2010
@Override  
 public boolean onContextItemSelected(MenuItem item) {  
  if(item.getTitle()=="Remove"){
   AdapterContextMenuInfo info = (AdapterContextMenuInfo) item.getMenuInfo();
   quotesAdapter.remove(quotes.get((int)info.id));
   quotesAdapter.notifyDataSetChanged();
   listView.setAdapter(quotesAdapter);
   serializeQuotes();
  }  
  else {
   return false;
  }  

  return true;  
 }  

Ничего не делает. Если я добавлю

this.quotesAdapter = new QuoteAdapter(this, R.layout.mainrow, quotes);

Удаление работает, но я не думаю, что это правильный путь. Я не уверен, что не так?

1 Ответ

0 голосов
/ 01 сентября 2010

Если quotes - это массив Java, который нельзя изменить во время выполнения.Попробуйте вместо этого использовать ArrayList<>.

Если quotes - это Cursor, вам нужно удалить строку из базовой базы данных, тогда requery() Cursor.

...