0

我正在尝试向 Android NumberPicker 添加自定义样式。我想要做的是将选择器显示为白色的文本,因为默认情况下(或根据设备上的默认主题)我将其显示为黑色。问题是我的应用程序背景是深色的,所以我希望文本是白色或清晰的。

所以我的 style.xml 文件中有这样的内容:

<style name="myPicker">
    <item name="android:textColor">#FFFFFF</item>
</style>

NumberPicker 小部件上甚至不存在 textcolor 属性,但我只是尝试添加它以便我的文本颜色发生变化。它当然不起作用。在这个小部件上唯一可以自定义的似乎是背景

现在的问题是:我们如何改变选择器的文本颜色?

如果有人有同样的问题或已经解决了,请告诉我们。

4

1 回答 1

3

我找到了一种“丑陋”的方式来做到这一点。只需获取对数字选择器小部件的子视图的引用。有三 (3) 个子视图:上箭头、文本视图(包含要显示的文本或值)和下箭头。

假设我们有一个名为 np 的数字选择器

np.setValue(10);
np.setMinValue(5);
np.setMaxValue(50);
// retrieve the textview reference
TextView npTextView = (TextView) np.giftAmount.getChildAt(1); // since indexing begins at 0
npTextView.setTextColor(getResources().getColor(
    R.color.my_custom_color)

我知道这很糟糕,但它确实有效......

于 2012-07-19T16:39:32.377 回答