大家好,
关于Android中的ListView,我有2个问题:
如何获得列表视图的重点行的颜色?我尝试使用ListView.getSelector()方法,根据它的文档,该方法应该可以为我提供所需的内容,但是它却为我提供了Drawable对象,但我不知道如何从中检索颜色(如果可能)。 ..)。
如何设置列表视图的重点行的颜色?在这里,我尝试在listview上使用setSelector()方法,向其传递一个ColorDrawable对象,但是这样做的结果是,列表视图的整个背景都以该颜色绘制了……这不是我想要的当然...
谢谢!
补充:如果您使用颜色而不是可绘制对象,则@Christopher 的答案不适用于API 7/8(根据@Jonny的正确评论)。(在我的测试中,按照Christopher使用可绘制对象效果很好)
这是使用颜色时用于2.3及以下版本的FIX:
Android:整个ListView会更改焦点上的颜色,而不仅仅是ListView子项 根据@Charles Harley的说法,在2.3及以下版本中存在一个错误,其中用颜色填充列表项会导致颜色在整个列表中流出。他的解决方法是定义一个shape包含所需颜色的可绘制对象,并使用该可绘制对象代替该颜色。
如果您只想使用颜色作为选择器,并且针对Android 2(或至少允许Android 2),则建议查看此链接。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。