开发者社区> 问答> 正文

Android ListView选择器颜色

大家好,

关于Android中的ListView,我有2个问题:

如何获得列表视图的重点行的颜色?我尝试使用ListView.getSelector()方法,根据它的文档,该方法应该可以为我提供所需的内容,但是它却为我提供了Drawable对象,但我不知道如何从中检索颜色(如果可能)。 ..)。

如何设置列表视图的重点行的颜色?在这里,我尝试在listview上使用setSelector()方法,向其传递一个ColorDrawable对象,但是这样做的结果是,列表视图的整个背景都以该颜色绘制了……这不是我想要的当然...

谢谢!

展开
收起
Puppet 2020-01-24 15:14:18 517 0
1 条回答
写回答
取消 提交回答
  • 补充:如果您使用颜色而不是可绘制对象,则@Christopher 的答案不适用于API 7/8(根据@Jonny的正确评论)。(在我的测试中,按照Christopher使用可绘制对象效果很好)

    这是使用颜色时用于2.3及以下版本的FIX:

    Android:整个ListView会更改焦点上的颜色,而不仅仅是ListView子项 根据@Charles Harley的说法,在2.3及以下版本中存在一个错误,其中用颜色填充列表项会导致颜色在整个列表中流出。他的解决方法是定义一个shape包含所需颜色的可绘制对象,并使用该可绘制对象代替该颜色。

    如果您只想使用颜色作为选择器,并且针对Android 2(或至少允许Android 2),则建议查看此链接。

    2020-01-24 15:14:37
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
58同城Android客户端Walle框架演进与实践之路 立即下载
Android组件化实现 立即下载
蚂蚁聚宝Android秒级编译——Freeline 立即下载