У меня есть следующий код, который должен удалить элемент, который щелкнули:ListView OnClick обновление очищает список
listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {
@Override
public void onItemClick(AdapterView<?> parent, View view,
int position, long id) {
String itemValue = (String) listView.getItemAtPosition(position);
email_addresses.remove(position);
String size = Integer.toString(email_addresses.size());
Log.d("Size: ", size);
//listView = (ListView) findViewById(R.id.email_list);
//ArrayAdapter<String> adapter = new ArrayAdapter<>(getApplicationContext(), android.R.layout.simple_list_item_1, android.R.id.text1, email_addresses);
//listView.setAdapter(adapter);
ArrayAdapter<String> adapter = new ArrayAdapter<>(mainAppContext, android.R.layout.simple_list_item_1, android.R.id.text1, email_addresses);
((ListView)parent).setAdapter(adapter);
parent.refreshDrawableState();
}
При нажатии на элемент списка очищается и не отображается ничего. Размер является правильным значением, и список можно перестроить, но я не могу заставить этот код работать. Спасибо
удалите последние 3 строки. Вместо этого попробуйте вызвать 'adapter.notifyDataSetChanged();'. 'adapter' определяется вне' setOnItemClickListener' –