gpt4 book ai didi

android - 更改 NumberPicker 文本大小

转载 作者:太空狗 更新时间:2023-10-29 14:56:06 31 4
gpt4 key购买 nike

如何设置数字选择器中心选定值的文本大小?并且当滚动时,中心数字的大小应该大于其他数字。

我试过使用下面的代码:

public static boolean setNumberPickerTextColor(NumberPicker numberPicker, int color) {
final int count = numberPicker.getChildCount();
for (int i = 0; i < count; i++) {
View child = numberPicker.getChildAt(i);
if (child instanceof EditText) {
try {
Field selectorWheelPaintField = numberPicker.getClass()
.getDeclaredField("mSelectorWheelPaint");
selectorWheelPaintField.setAccessible(true);
((Paint) selectorWheelPaintField.get(numberPicker)).setColor(color);
((EditText) child).setTextColor(color);
((EditText) child).setTextSize(48);
numberPicker.invalidate();
return true;
} catch (NoSuchFieldException | IllegalAccessException | IllegalArgumentException e) {
Log.w("setNumberPickerTextColor", e);
}
}
}
return false;
}

但滚动后文字大小恢复正常

最佳答案

您可以使用 XML 和强大的样式来做到这一点。

首先将以下内容添加到您的 styles.xml

<style name="MyTheme.NumberPicker">
<item name="android:textSize">11dp</item>
</style>

然后在您的 NumberPicker 中使用该样式,如下所示:

<android.widget.NumberPicker        
...
android:theme="@style/MyTheme.NumberPicker"
.../>

在 API +17 上测试

关于android - 更改 NumberPicker 文本大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31289380/

31 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com