1

我正在尝试创建一个自定义所有 ListViews 的自己的主题。我对选择器工作得很好,但我希望在按下 ListView 项时 TextView 颜色不会变为黑色(因为列表选择器足够暗)。

这是我尝试过的。textColorinMyListView也没有效果。我还尝试定义一个可绘制选择器,textColor它对所有状态都使用白色,但仍然没有效果。

<style name="MyTheme" parent="Theme.Sherlock">
    <item name="android:listViewStyle">@style/MyListView</item>
</style>

<style name="MyListView" parent="@style/ICSListView_Dark">
    <item name="android:textViewStyle">@style/NoHighlightListTextView</item>
</style>

<style name="NoHighlightListTextView" parent="@android:style/Widget.TextView">
    <item name="android:textColor">@android:color/white</item>
</style>

事件可能吗?破解代码中的颜色将是一个很大的开销。感觉还是有不明白的地方。所以...

如何为 ListViews 定义一般主题,以便 TextViews 的按下颜色为白色(而不是黑色)?


编辑

经过一番阅读,我得出结论,按照我描述的方式实现这一目标是不可能的。您可以textColor全局设置,MyTheme但它会影响所有 TextView。或者您创建一个行为正确的自己的列表项布局。但是您不能使用主题定义修改默认的 android 列表项。如果我再想一想,这似乎是合乎逻辑的...... TextView 应该检查它是否嵌套在 ListView 中,否则永远不会发生。

4

0 回答 0