【问题标题】:How to set text color in code to a android widget?如何将代码中的文本颜色设置为 android 小部件?
【发布时间】:2013-09-22 10:55:26
【问题描述】:

我有一个 android 小部件,它更新并从 4 个数字中选择一个随机整数,如果数字等于 1,我希望它将文本颜色设置为我尝试过的特定颜色:

if (colornumb == 1)
        {
        view.setTextColor(R.id.text1, Color.rgb(200, 0, 0));
        }

它不起作用我得到白色而不是红色。 我将不胜感激,谢谢。

更新:感谢您的回答,我解决了问题。(它没有更新,因为我有一个配置活动。它只是在配置活动中复制/粘贴换色器代码并更新了视图从那里开始。)

【问题讨论】:

  • 是列表项还是普通的TextView?

标签: android colors android-widget widget


【解决方案1】:

这个呢

if (colornumb == 1)
        {
        //view.setTextColor(R.id.text1, Color.RED);
        view.setTextColor(Color.parseColor("red"));
        }

【讨论】:

  • 我得到白色的结果相同。
  • 它不起作用,它确实适用于普通的 android 应用,但不适用于小部件
  • @user2635745 然后还会从视图创建更多需要代码的小部件
  • @user2635745 显示更多代码您的 xml 可能是您缺少的东西
  • 彩色 xml 或布局?
【解决方案2】:

就用这个吧

view.setTextColor(activity.getResources().getColor(R.color.white));
    view.setTextColor(activity.getResources().getColor(R.color.red));
    view.setTextColor(activity.getResources().getColor(R.color.green));

并在res/values/colors.xml中剃除颜色值

colors.xml

<?xml version="1.0" encoding="utf-8"?>
 <resources> 

     <color name="white">#fff</color>
     <color name="red">#DF1111</color>
     <color name="green">#63DF11</color>

  </resources> 

在小部件中试试这个

Widget.setBackgroundColor(Color.RED); 

还有这个

remoteView.setInt(R.id.message, "setBackgroundColor" android.graphics.Color.BLACK);

【讨论】:

    【解决方案3】:

    它没有更新,因为我有一个配置活动。它只是在配置活动中复制/粘贴换色器代码并从那里更新视图。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-08-25
      • 1970-01-01
      • 2023-04-04
      • 1970-01-01
      • 2012-09-13
      • 1970-01-01
      相关资源
      最近更新 更多