2012-01-05 126 views
1

我试图在运行时更改TextView的属性,而我试图做的一件事是更改文本颜色当用户按下按钮时,然而当用户按下按钮时文本简单地“消失”。尝试在运行时更改TextView的颜色,文本“消失”

// Changes colour of team name text when a colour button is pressed 
    bColourPink.setOnClickListener(new OnClickListener() { 
     public void onClick(View v) { 
      tvTeamName.setTextColor(R.color.pink); 
     } 
    }); 

颜色资源在程序的其他区域(即正确显示预期颜色)中按照预期工作。

在研究问题时,我发现其他人有相同的问题,因为他们的颜色资源是#rgb,因此它将alpha设置为0,但是我将我的颜色资源更改为#aarrggbb格式,而且我仍然遇到同样的问题。

+0

今天我已经过了半天的颜色问题....用'Color.rgb()'函数完成了。 – 2012-01-05 12:43:57

回答

4

请使用

tvTeamName.setTextColor(getResources()的getColor(R.color.pink)。);

+0

谢谢! :)(我应该看到一些东西看起来不对!) – Eilidh 2012-01-05 12:46:27

3

R.color.pink是代表资源的'id'的值。 它不是资源本身,所以它不是粉红色。

使用getResources()获取资源R.color.pink