繁体   English   中英

问题设置TextView颜色

[英]Problem setting TextView color

这是我的彩色XML

<resources>
    <drawable name="red">#7f00</drawable>
    <drawable name="blue">#770000ff</drawable>
    <drawable name="green">#7700ff00</drawable>
    <drawable name="yellow">#77ffff00</drawable>

    <drawable name="screen_background_black">#ff000000</drawable>
    <drawable name="translucent_background">#e0000000</drawable>
    <drawable name="transparent_background">#00000000</drawable>

    <color name="solid_red">#ED1C24</color>
    <color name="solid_blue">#0000ff</color>
    <color name="solid_green">#39B54A</color>
    <color name="solid_yellow">#ffffff00</color>

</resources>

这是我的Java代码:

if (floatedChange < 0)
                            changeText.setTextColor(R.color.solid_red); //red
                        else
                            changeText.setTextColor(R.color.solid_green); //green

当我使用Color.RED或Color.GREEN,但我使用自己的颜色时,此方法有效。 颜色不显示。

为什么?

很抱歉回答一个老问题,但是对于其他有相同问题的人来说,这是正确的答案:来自http://developer.android.com/guide/topics/resources/more-resources.html#Color

Resources res = getResources();
int color = res.getColor(R.color.opaque_red);

因此,只需将您的Java代码更改为

if (floatedChange < 0)
    changeText.setTextColor( getResources().getColor(R.color.solid_red) ); //red
else
    changeText.setTextColor( getResources().getColor(R.color.solid_green) ); //green

这样做:

在您的XML文件中,使用style

<?xml version="1.0" encoding="utf-8"?>
<resources>
   <style name="YourCustomText">
        <item name="android:textColor">#FFFF00</item>
    </style>
</resources>

然后,在您的.java代码中:

//Here you assign the style that is defined in YourCustomText
yourTextView.setTextAppearance(this, R.style.YourCustomText);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM