selector想必大家都用过了,但是在修改字体的颜色的时候还是要细心。

我们在TextView中设置字体颜色一般使用

android:textColor="@color/red"

但是我们在使用selector动态修改字体颜色的时候要使用

  1. android:color="@color/red"

我遇到这个问题的时候是在TabActivity中,每个Tab在选中的时候修改为蓝色。

tab_item.xml的代码如下:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
  3. android:id="@+id/ll_software_tabwidget_item"
  4. android:layout_width="fill_parent"
  5. android:layout_height="fill_parent"
  6. android:gravity="center_horizontal"
  7. android:orientation="vertical" >
  8. <ImageView
  9. android:id="@+id/iv_software_tabwidget_icon"
  10. android:layout_width="30dip"
  11. android:layout_height="30dip"
  12. android:layout_marginBottom="1dip"
  13. android:layout_marginTop="5dip"
  14. android:scaleType="fitXY" />
  15. <TextView
  16. android:id="@+id/tv_software_tabwidget_text"
  17. android:layout_width="wrap_content"
  18. android:layout_height="wrap_content"
  19. android:layout_marginBottom="5dip"
  20. android:textColor="@drawable/software_textcolor"
  21. android:textSize="14dip" />
  22. </LinearLayout>

注意android:textColor="@drawable/software_textcolor",即software_textcolor.xml就是selector,源码如下:

  1. <?xml version="1.0" encoding="utf-8"?>
  2. <selector xmlns:android="http://schemas.android.com/apk/res/android" >
  3. <item android:state_selected="true" android:color="@color/software_textColor_selected"></item>
  4. <item android:state_selected="false" android:color="@color/software_textColor_unselected"></item>
  5. </selector>

这个文件中就是要注意的地方了,必须使用android:color="@color/software_textColor_selected",不能使用android:textColor属性。

另附color.xml的源码如下:

    1. <?xml version="1.0" encoding="utf-8"?>
    2. <resources>
    3. <color name="software_textColor_selected">#FF1C94EA</color>
    4. <color name="software_textColor_unselected">#FFDCE0DF</color>
    5. </resources>

使用selector修改TextView中字体的颜色的更多相关文章

  1. android:修改PagerTabStrip中的背景颜色,标题字体的样式、颜色和图标以及指示条的颜色

    1.修改PagerTabStrip中的背景颜色 我们在布局中直接设置background属性即可: <android.support.v4.view.ViewPager android:id=& ...

  2. QT5如何设置QLabel中字体的颜色

    修改了wd的文章: 如何使用Qt5,设置QLabel中字体的颜色. 大致有几种做法: 一是使用setPalette()方法: 二是使用样式表: 三是可以使用QStyle: 四是可以在其中使用一些简单的 ...

  3. delphi 修改Hint的字体和颜色

    //修改Hint的字体和颜色   public    { Public declarations }    procedure Sshowhint(var hintstr:string;var can ...

  4. Android Studio 3.1.2 修改字体(font)大小(size) 及老版本修改主题、字体、颜色 参照地址

    Android Studio 3.1.2  修改字体(font)大小(size) 步骤:File-Settings-Editor-Color Scheme-Color Scheme Font-Size ...

  5. 四、Input框改placeholder中字体的颜色

    Input框改placeholder中字体的颜色 input::-webkit-input-placeholder { color: #ccc; font-size: 12px; }

  6. 李洪强iOS开发之-修改状态栏的字体的颜色

    李洪强iOS开发之-修改状态栏的字体的颜色 修改的效果: -(void)viewDidAppear:(BOOL)animated { [super viewDidAppear:animated]; [ ...

  7. Android 修改 TextView 的全局默认颜色。

    如果你的应用中大多数TextView的颜色是红色, 或者其他颜色, 你是为每一个TextView都设置一次颜色, 还是有其他更好的办法, 这里教你怎么修改TextView的默认颜色. 当然我们Text ...

  8. 使用Selector改变TextView的字体颜色textColor的方法

    先上Selector文件,名字为singer_fragment_top_text_style.xml, <?xml version="1.0" encoding=" ...

  9. 关于怎么在CSDN中修改代码行中字体的颜色

    先吐槽一下自己的心路历程吧,自己现在也是在CSDN中发表了自己好几篇的原创博文,但每一篇博文自己总感觉怪怪的,就是说不出自己哪里有毛病呢,知道今天恍然大悟,原来自己的代码行真心丑的要死,没有呈现出在编 ...

随机推荐

  1. VS2010界面主题更换全过程

    VisualStudio 2010的界面默认是蓝色的,背景是白色,字体是宋体,这些设置习惯了还好,但是可能看多了不怎么舒服.而且如果以前是用VS 6.0的知道,它使用的字体更为舒服清晰.所以,可以对V ...

  2. java接口与继承

    class Grandparent { public Grandparent() { System.out.println("GrandParent Created."); } p ...

  3. httpmime-session 会话保持

    sesion在浏览器和web服务器直接是通过一个叫做name为sessionid的cookie来传递的,所以只要在每次数据请求时保持sessionid是同一个不变就可以用到web的session了,做 ...

  4. 解决Maven不能下载“oracle、aspectjweaver、com.springsource.net.sf.cglib”jar

    鸣谢网址:http://www.cnblogs.com/dongyangbolg/p/3455422.html http://www.cnblogs.com/ysq0908/p/4737977.htm ...

  5. uva 10306

    有点不同的完全背包问题  但思路还是一样的 /************************************************************************* > ...

  6. HDU4631+Set+最近点对

    题意:一个空平面,每次增加一个点, 其坐标根据上一个点算出:(x[i-1] * Ax + Bx ) mod Cx,(y[i-1] * Ay + By ) mod Cy 求出现有点集中的最近点对的距离的 ...

  7. 【零基础学习iOS开发】【02-C语言】09-流程控制

    前言 1.默认的运行流程 默认情况下,程序的运行流程是这样的:运行程序后,系统会按书写顺序执行程序中的每一行代码.比如下面的程序 1 #include <stdio.h> 2 3 int ...

  8. ENVI Services Engine5.1 应用开发入门教程

    原文地址: ENVI Services Engine5.1 应用开发入门教程_ENVI-IDL中国_新浪博客 http://blog.sina.com.cn/s/blog_764b1e9d0102uy ...

  9. ORA-00911 :无效字符

    ———————————————————————————————————————————————————— 附: 1   ORA-01790:表达式必须具有与对应表达式相同的数据类型 知识解析:SQL ...

  10. 186. Reverse Words in a String II

    题目: Given an input string, reverse the string word by word. A word is defined as a sequence of non-s ...