(转)TextView 设置背景和文本颜色的问题

在做一个项目,突然遇到如下问题

比如:
在color.xml中定义了几个颜色

  1. <color name="white">#FFFFFF</color>
  2. <color name="orange">#DF8326</color>

复制代码

又给TextView 设置了字体颜色和背景色

  1. <TextView
  2. android:id="@+id/hello"
  3. android:textColor="@color/white"
  4. android:background="@color/orange"
  5. android:text="Hello World"
  6. />

复制代码

运行之后,显示是正常的,背景为橙色,文字为白色。

但是我动态操作了一下控件,就是把这个TextView 的字体颜色和背景颜色对调一下。
问题出来了,颜色变了,变成了灰色背景,黑色文字。

  1. view_hello.setBackgroundColor(R.color.white);
  2. view_hello.setTextColor(R.color.orange);

复制代码

我尝试了各种颜色格式,这些只是Android支持的: #RGB, #ARGB, #RRGGBB , #AARRGGBB 。
但结果还是一样,开始显示是正常的。经过上面代码操作一下后就变成灰色背景,黑色文字。

为什么会出现这种情况?是什么原因造成的?怎么解决这个问题?

摘自http://www.eoeandroid.com/thread-26787-1-1.html

(转)TextView 设置背景和文本颜色的问题

时间: 2024-08-08 12:40:33

(转)TextView 设置背景和文本颜色的问题的相关文章

改变对话框和控件的背景及文本颜色

WM_CTLCOLOR,响应函数:CWnd::OnCtlColor afx_msg HBRUSH OnCtlColor( CDC* pDC,  //当前要绘制的控件的设备上下文的指针 CWnd* pWnd,  //当前要绘制的控件的指针 UINT nCtlColor  //要绘制的控件的类型 ); 1.改变整个对话框及其上子控件的背景色 为程序的"设置"对话框CSettingDlg添加WM_CTLCOLOR命令消息及其消息响应函数: 在对话框类CSettingDlg类中添加私有成员变量

navigationItem.rightBarButtonItem 设置背景图片,颜色更改解决办法

self.navigationItem.rightBarButtonItem=[[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"MoreImage"] style:UIBarButtonItemStylePlain target:self action:@selector(moreItemPress)]; 用这种方法,设置的背景图片,颜色变掉了.不是原来设置的图片颜色. 可以用另外一种方式,可以解决变色的问题. U

Android给TextView设置多个字体颜色

效果如下: /** * @param textView * @param positions 变色的位置 * @param colors 多个颜色值,数量和positions的数量可以不一致,如果颜色值比位置值少,则是交叉来使用的 * @描述 设置一个textivew显示多种颜色 * @作者 tll * @时间 2016/11/11 10:37 */public static void setMultipleColor(TextView textView, List<Integer> posi

【MFC系列】MFC快速设置控件文本字体、大小、颜色、背景

以静态文本为例,分享一下怎么修改文本字体.大小.颜色.背景等参数.其他文本.控件等可参照修改. 1.修改字体.大小 这个很简单,首先在Dlg类中声明一个CFont类型的成员变量: 然后在类的初始化函数OnInitDialog()中添加以下两行代码: 1 //设置静态文本字体大小 2 m_editFont.CreatePointFont(180, _T("宋体")); 3 m_Static.SetFont(&m_editFont); 2.改变编辑框文本颜色.背景颜色 右键点击该对

ExtJS4.1.1 设置表格背景颜色 修改文本颜色 在表格中插入图片

由于ExtJS版本不断更新,各种渲染方式也随之有所改变,目前大部分书籍还是停留在3版本,对于ExtJS4.1.1版本的表格渲染,设置表格行背景颜色的方式如下: 首先,定义行的样式: 1.yellow-row .x-grid-cell{ 2  background-color:#FFFF00 !important; 3         } 4  .white-row .x-grid-cell{ 5    background-color:#FFFFFF !important; 6         

重写TextView,实现圆形背景,文本居中显示

最近,在做考试试题排版,产品提出题号希望显示成圆形背景,序号文本居中显示. (有点问题:文本没有绝对居中,暂时没做处理.) 为此,我采取的方式是重写TextView的onDraw方法,绘制一个圆形背景. 具体代码如下: package com.example.myapp; import android.content.Context; import android.content.res.TypedArray; import android.graphics.*; import android.

TextView设置动态改变颜色

通过TextView的setTextColor方法进行文本颜色的设置, 这里可以有3种方式进行设置: 第1种:tv.setTextColor(android.graphics.Color.RED);//系统自带的颜色类 第2种:tv.setTextColor(0xffff00ff);//0xffff00ff是int类型的数据,分组一下0x|ff|ff00ff,0x是代表颜色整数的标记,ff是表示透明度,ff00ff表示颜色,注意:这里ffff00ff必须是8个的颜色表示,不接受ff00ff这种6

Aspose.Cells 设置背景颜色

很多小伙伴设置背景颜色都不起作用,特别提醒需要加入下面一行: style.Pattern = BackgroundType.Solid; Aspose.Cells.Style style = null; int index = workbook.Styles.Add(); style = workbook.Styles[index]; //文本颜色 style.Font.Color = Color.Red; style.Font.Size = 10; //设置背景颜色 style.Foregro

Android给TextView设置透明背景、圆角边框

第一种方法:在drawable文件夹下新建一个文件设置背景样式 代码: 在drawable文件夹下面新建text_view_border.xml [java] view plaincopy <?xml version="1.0" encoding="UTF-8"?> <shape xmlns:android="http://schemas.android.com/apk/res/android"> <solid an