我正在尝试创建一个 ListView,它将根据该行的内容以给定颜色显示每一行,但仍允许选择器进行绘制。就像现在一样,如果我在一行上调用 View.setBackgroundColor,它会正确地为背景着色,但不会绘制选择器。
最佳答案
您有三个主要选择。
一种方法是使用 android:drawSelectorOnTop="true"
并将 ListView
的选择器设置为透明/半透明的,因此当它被绘制时在一行的顶部,您仍然可以看到该行的内容。
或者,您需要将行背景设置为 StateListDrawable
,而不是颜色,当行被选中时,背景颜色被设置为透明,因此常规选择器 (在行的后面绘制)是可见的。
也欢迎您使用 ListView
注册一个选择监听器,并根据选择更改的时间进行自定义颜色更改。
关于android - 根据内容为 ListView 行着色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3497412/