Удалить элемент, щелкнув любой элемент в списке

Я сделал listview, где в заголовке текстовое поле редактирования, чтобы добавить список. И он отлично работает и успешно добавляет элемент. Затем я пытаюсь вызвать этот список и установить адаптер. Теперь, когда я нажимаю элемент, он должен быть удален, но его сила закрыта. Вот мой код:

public class AddDeleteItemActivity extends ListActivity { public ListView listViewCity; public Context ctx; ArrayList list = new ArrayList(); ArrayAdapter adapter; @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); Button btn = (Button) findViewById(R.id.btnAdd); ctx=this; adapter = new ArrayAdapter(this, android.R.layout.simple_list_item_multiple_choice, list); OnClickListener listener = new OnClickListener() { @Override public void onClick(View v) { EditText edit = (EditText) findViewById(R.id.txtItem); list.add(edit.getText().toString()); edit.setText(""); adapter.notifyDataSetChanged(); } }; listViewCity = ( ListView ) findViewById( R.id.list); listViewCity.setAdapter(adapter); listViewCity.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> a, View v, int position, long id) { Toast.makeText(getApplicationContext(), " " +position , Toast.LENGTH_LONG).show(); SparseBooleanArray checkedItemPositions = getListView().getCheckedItemPositions(); int itemCount = getListView().getCount(); for(int i=itemCount-1; i >= 0; i--){ if(checkedItemPositions.get(i)){ adapter.remove(list.get(i)); } } adapter.notifyDataSetChanged(); } }); btn.setOnClickListener(listener); setListAdapter(adapter); } } 

Попробуйте этот путь

 listViewCity.setOnItemClickListener(new OnItemClickListener() { @Override public void onItemClick(AdapterView<?> a, View v, int position, long id) { Toast.makeText(getApplicationContext(), " " +position , Toast.LENGTH_LONG).show(); list.remove(position); adapter.notifyDataSetChanged(); adapter.notifyDataSetInvalidated(); } }); 

Удалить из списка и обновить список с помощью уведомления адаптера

отредактированный

Почему вы используете это утверждение при расширении ListActivity

 listViewCity = ( ListView ) findViewById( R.id.list); 

Либо вы можете получить объект ListView с помощью getListView () с расширением ListActivity или расширением Activity вместо ListActivity.

Intereting Posts
Нарисовать более 4K полилиний в android google maps Доступ с полным доступом, несмотря на TalkBack / screen reader Android Alpha, бета для платных приложений в консоли разработчика Google Play Установленное приложение является сторонним или нет Обнаружение объекта для Android с помощью tesseract или OpenCV Android: указание одной и той же темы в styles.xml и styles-21.xml Жизненный цикл класса приложений Android Переопределить кнопку удаления на Android? Как я могу найти все жестко закодированные строки в моем проекте в Android Studio Только некоторые пользователи сообщают об ошибке «Ресурс не найден». Имеет ли это смысл? Android-система WebView нарушает приложения Android! «Могилы отключены на JB MR2 + пользовательских сборках» Android как получить фотогалерею телефонов? ANDROID WEBKIT: выберите элементы, получающие фокусные события, но не открывающиеся! Проблемы с чатом в чате Проблема HttpClient с URL-адресами, которые включают фигурные скобки