【发布时间】:2011-06-14 03:18:04
【问题描述】:
我为自定义 ListView 编写了代码。它只是一个包含三个文本字段的视图。我使用 setBackgroundColor 将行背景设置为白色。但是,当我单击一行时,颜色不再改变。我完全以编程方式执行此操作。有没有办法在单击 ListView 行时恢复 Android 选择器颜色?
【问题讨论】:
标签: android android-layout android-listview
我为自定义 ListView 编写了代码。它只是一个包含三个文本字段的视图。我使用 setBackgroundColor 将行背景设置为白色。但是,当我单击一行时,颜色不再改变。我完全以编程方式执行此操作。有没有办法在单击 ListView 行时恢复 Android 选择器颜色?
【问题讨论】:
标签: android android-layout android-listview
不断变化的选择颜色是属于列表项的背景可绘制对象的属性。您必须自己指定一个,使用可绘制的状态列表。
更多信息在这里:
Drawable Resources: State List
这里:
What is the default drawable for pressing a list item
令人讨厌的是,系统的默认列表项背景无法从应用程序中访问,因此您必须复制原件(或者如果您愿意,也可以使用自己的样式)。
【讨论】: