Intereting Posts
Android-библиотека Gradle release JAR Android-оповещение по уведомлению службы push-push Каков максимальный размер запроса-очереди волей-библиотек Пользовательский конвертер для дооснащения 2 Как добавить один разделитель раздела для навигационного ящика в Android? Как удалить всплывающее окно автоматической фокусировки / клавиатуры при появлении экрана? Изображение не настраивается автоматически OnTouchListener не работает с относительной компоновкой Android: рендеринг OpenGL приостанавливается при запуске тяжелой фоновой задачи Ошибка покупки приложения в статических кодах Создайте DummyActivity внутри папки androidTest для тестирования Android Studio Warning: использование несовместимых плагинов для обработки аннотаций OnPageStart вызывается много раз, а onPageFinished не вызывается для одной страницы Центрировать объекты по горизонтали в RecyclerView (используя GridLayoutManager) ViewPager: рекурсивная запись в executePendingTransactions

Android ListView Удалить выделение

Есть ли способ элегантно удалить выбор в ListView. Это будет действовать противоположным образом ListView # setSelection (int position). Я хотел бы программно удалить выделение из ListView (так, чтобы ни один элемент не был выбран). Не похоже, что API имеет простой способ сделать это. Есть предположения?

Мой вопрос похож на: Android: отключить выбор ListView

Solutions Collecting From Web of "Android ListView Удалить выделение"

Ни один из других ответов не работал для меня, поэтому я сделал это:

SparseBooleanArray positions = getListView().getCheckedItemPositions(); for (int i = 0; i < positions.size(); i++) { getListView().setItemChecked(positions.keyAt(i), false); } 

Не очень элегантный, но он работает.

Хорошо, что я мог бы сделать для этого, установите цвет выделения и фон как одного цвета, если это возможно, либо установите выделение с полным значением альфа, что делает его прозрачным и даже если выбор там, он больше не будет виден

Самый простой способ найти обновление адаптера ListView:

 listAdapter.notifyDataSetChanged(); 

ListView затем обновится, имея одинаковые варианты, но подсветка выделения будет очищена.

Использовать listView.setItemChecked(-1, true);