本文介绍了NumberPicker textColour的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个的ListView 包含的TextView NumberPicker 每一行。
每当我开始了活动,的号码 NumberPicker 是白色的(相同的颜色作为背景)。

我试过应用样式的建议,的和here ;无济于事。

任何其他建议?

-

NumberPicker.xml

 < NumberPicker
    机器人:ID =@ + ID / npMaterialAmount
    机器人:layout_alignParentRight =真
    机器人:layout_width =WRAP_CONTENT
    机器人:layout_height =75dp
    风格=@风格/ npColour/>

-

试过的风格1:

 <样式名称=npColour>
    <项目名称=机器人:文字颜色>#000000< /项目>
< /风格>

-

试过的风格2:

 <样式名称=npColour父=@安卓风格/ Theme.Holo.Light>
< /风格>

-

...和这样的例子不胜枚举...


解决方案

我知道这个问题是旧的。我在这里创办了答案:的文本颜色

复制:

import java.lang.reflect.Field;

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);
                numberPicker.invalidate();
                return true;
            }
            catch(NoSuchFieldException e){
                Log.w("setNumberPickerTextColor", e);
            }
            catch(IllegalAccessException e){
                Log.w("setNumberPickerTextColor", e);
            }
            catch(IllegalArgumentException e){
                Log.w("setNumberPickerTextColor", e);
            }
        }
    }
    return false;
}

这篇关于NumberPicker textColour的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-11 01:27