Android, как сделать подсветку при нажатии?

У меня есть линейный макет, в котором каждая строка раздута программно, и я хочу, чтобы строки отображались как ListView при нажатии. То есть, я хочу, чтобы строка выделялась точно таким же образом / цветом, что и в ListView по умолчанию. Как мне это сделать?

Solutions Collecting From Web of "Android, как сделать подсветку при нажатии?"

Хорошо, я наконец-то понял, как это сделать … в основном это делается с помощью селектора, такого как селектор цветов, связанный стилем, за исключением того, что вместо «цвета» используется переносимое для состояний, и вы можете ссылаться на список по умолчанию, Используется в ListView следующим образом:

<selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_pressed="true" android:drawable="@android:drawable/list_selector_background" /> </selector> 

И используя этот xml в качестве фона для моего представления.

Все общедоступные чертежи по умолчанию можно найти здесь: http://developer.android.com/reference/android/R.drawable.html

Я смог сделать то же самое с текстовым представлением, что я хотел вести себя как элемент списка, используя:

 <Textview .... android:background="@android:drawable/list_selector_background" /> 

Это может быть хорошим местом для начала поиска.

Хотя, я бы посоветовал вам использовать сам ListView, а не реализовывать его снова.

Если у вас все еще есть проблема с этим, пожалуйста, помните, что некоторые элементы пользовательского интерфейса не доступны для клика (RelativeLayout), поэтому вам нужно добавить еще одну строку:

 <RelativeLayout .... android:clickable="true" ... 

Свойству свойства listview

 android:listSelector="@color/test" 

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