Android: отключение подсветки при нажатии на просмотр списка - PullRequest
292 голосов
/ 25 мая 2010

Я хочу отключить оранжевую подсветку, которая появляется при касании строки listView. До сих пор в моем XML я пробовал следующее:

android:focusable="false"
android:focusableInTouchMode="false"
android:clickable="false"

Дополнительная информация. Я хочу, чтобы при касании экрана в этом объекте listView была нулевая разница.

Ответы [ 15 ]

5 голосов
/ 21 марта 2012

Для меня android:focusableInTouchMode="true" это путь.android:listSelector="@android:color/transparent" бесполезно.Обратите внимание, что я использую пользовательский список с количеством объектов в каждой строке.

4 голосов
/ 27 сентября 2016

Как альтернатива:

listView.setSelector(android.R.color.transparent);

или

listView.setSelector(new StateListDrawable());
1 голос
/ 08 января 2018

Существует быстрый и простой способ сделать это: В методе:

private void OnItemSelected(object sender, SelectedItemChangedEventArgs e)
{
    //TODO
    ((ListView)sender).SelectedItem = null;
}

Надеюсь, это поможет;)

0 голосов
/ 02 ноября 2016

вы можете просто получить pos, который вы получите от onItemClick и сделать:

listView.setItemChecked(pos, false);

это лучший из известных мне способов

0 голосов
/ 19 июля 2016

Если вы хотите отключить выделение для одного элемента представления списка, но оставить ячейку включенной, установите цвет фона для этой ячейки, чтобы отключить выделение.

Например, в макете вашей ячейки установите android:background="@color/white"

...