要更改所选的NumberPicker的文本颜色,你可以使用自定义的NumberPicker.Formatter来实现。以下是一个示例代码:
首先,在你的布局文件中添加一个NumberPicker组件:
然后,在你的Activity或Fragment中,获取该NumberPicker并设置一个自定义的Formatter:
NumberPicker numberPicker = findViewById(R.id.numberPicker);
numberPicker.setFormatter(new NumberPicker.Formatter() {
@Override
public String format(int value) {
// 自定义文本颜色
if (value == numberPicker.getValue()) {
return "" + value + ""; // 设置所选项的文本颜色为红色
} else {
return String.valueOf(value);
}
}
});
在上面的代码中,我们通过设置NumberPicker.Formatter来自定义NumberPicker的文本。在format()方法中,我们可以根据所选的值来设置不同的文本颜色。在这个例子中,我们将所选的项的文本颜色设置为红色。
请注意,为了使用HTML样式来设置文本颜色,你需要使用HTML标记。在这个例子中,我们使用了标记来设置所选项的文本颜色为红色。
最后,你可能还需要在应用的theme中禁用NumberPicker的默认选择器。在你的主题中添加以下代码:
- @android:color/transparent
- @android:color/transparent
这样就可以更改所选NumberPicker的文本颜色了。