我有一个线性布局,其中每行以编程方式膨胀,我希望这些行在单击时表现得像ListView。也就是说,我希望行以与默认ListView完全相同的方式/颜色突出显示。我该怎么做呢?
答案 0 :(得分:56)
好的,我终于想出了如何做到这一点...基本上它是使用一个选择器完成的,如颜色选择器按样式链接,除了'color'使用一个drawable状态,你可以参考默认列表由ListView在ListView中使用的drawable:
<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
答案 1 :(得分:20)
我能够使用文本视图执行相同操作,我希望通过使用以下内容来表现为列表项:
<Textview
....
android:background="@android:drawable/list_selector_background"
/>
答案 2 :(得分:2)
This可能是一个开始寻找的好地方。
虽然,我建议你使用ListView本身,而不是再次实现它。
答案 3 :(得分:2)
如果你仍然有问题那么请记住一些UI元素不可点击(RelativeLayout),所以你必须再添加一行:
<RelativeLayout
....
android:clickable="true"
...
答案 4 :(得分:1)
到listview设置属性
android:listSelector="@color/test"
并且此测试颜色设置您喜欢的任何透明颜色。您可以使用hex transparent color
创建任何透明色