`
jianweicao
  • 浏览: 119701 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

使用selector修改TextView中字体的颜色

 
阅读更多

转载自:http://blog.csdn.net/dinglin_87/article/details/7885806

 

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

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

android:textColor="@color/red"

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

 

[html] view plaincopy
 
  1. android:color="@color/red"  

 

 

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

tab_item.xml的代码如下:

 

[html] view plaincopy
 
  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.   
  9.    <ImageView  
  10.         android:id="@+id/iv_software_tabwidget_icon"  
  11.         android:layout_width="30dip"  
  12.         android:layout_height="30dip"  
  13.         android:layout_marginBottom="1dip"  
  14.         android:layout_marginTop="5dip"  
  15.         android:scaleType="fitXY" />  
  16.   
  17.     <TextView  
  18.         android:id="@+id/tv_software_tabwidget_text"  
  19.         android:layout_width="wrap_content"  
  20.         android:layout_height="wrap_content"  
  21.         android:layout_marginBottom="5dip"  
  22.         android:textColor="@drawable/software_textcolor"  
  23.         android:textSize="14dip" />  
  24.       
  25. </LinearLayout>  


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

 

 

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


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

 

另附color.xml的源码如下:

 

[html] view plaincopy
 
  1. <?xml version="1.0" encoding="utf-8"?>  
  2. <resources>  
  3.   
  4.     <color name="software_textColor_selected">#FF1C94EA</color>  
  5.     <color name="software_textColor_unselected">#FFDCE0DF</color>  
  6.       
  7. </resources>  

 

 

分享到:
评论

相关推荐

    Android使用selector修改TextView中字体颜色和背景色的方法

    本文将深入探讨如何使用Selector来修改TextView的字体颜色和背景颜色。 首先,我们来创建两个XML文件,分别用于定义背景色和字体颜色的Selector。这两个文件将放在项目的res/color目录下。 1. `tbackground.xml` -...

    android动态设置TextView字体颜色

    在Android开发中,动态设置TextView字体颜色是一项常见的需求。开发者可能需要根据用户的操作、应用程序的状态或者数据的变化来改变TextView的文字颜色。这篇博文“android动态设置TextView字体颜色”为我们揭示了...

    iconFont 实现selector的Demo

    2. **定义状态**:在selector文件中,使用`&lt;item&gt;`标签定义图标在不同状态(如`android:state_pressed="true"`,`android:state_focused="true"`)下的表现,包括图标颜色、描边等属性。 3. **引用iconfont**:在`...

    android listView 改变选中行的 字体颜色和 图片

    - 根据选中状态,使用`TextView.setTextColor()`方法设置相应的颜色。 6. **设置图片**: - 创建两种图片资源,一种是默认图片,另一种是选中状态的图片。 - 使用`ImageView.setImageResource()`方法根据选中...

    android NumberPicker修改选中内容的颜色等

    如果你想修改的不仅仅是颜色,而是整个内容的样式,如字体大小、类型等,你可以创建一个自定义的`TextView`并应用到`NumberPicker`。这需要重写`NumberPicker`的`onCreateView()`方法,替换默认的`Spinner`视图: ...

    Android界面-标题和按钮定制

    3. **自定义字体和样式**:通过加载自定义字体文件并将其应用于`TextView`,可以在标题中使用独特的字体。可以使用`Typeface`类来加载字体,并将其应用于`Toolbar`的标题。 接下来,我们关注按钮的定制。Android的...

    MyRecView.zip

    - **文字颜色**:文本的颜色,使用`setTextColor()`方法设置。 - **圆角大小**:控制矩形的圆角半径,设置`addRoundRect()`方法的参数即可。 4. **属性解析**: 自定义View的属性通常通过XML资源文件定义,并在...

    安卓仿微信底部菜单源码

    在安卓中,我们可以使用TextView的setTextColor方法,或者通过设置Selector来实现文字颜色的变化。源码中应该包含了动态修改文字颜色的逻辑。 3. Activity跳转:底部菜单的点击事件通常会触发Activity的切换,以便...

    ButtonDemo

    - 对按钮进行主题设置可以改变其背景、文字颜色、字体大小等属性。 在"3.ButtonDemo"这个项目中,开发者可能创建了自定义的shape和selector资源文件,用于改变按钮的外观。可能还修改了应用的主题,使所有按钮统一...

    AndroidUI设计

    控件美化通常涉及修改控件的样式和主题,例如修改TextView的颜色、字体、大小,Button的背景图、文字颜色等。这些可以通过定义自定义样式和在XML布局文件中引用来实现。此外,使用Shape、Selector等资源文件可以创建...

    android实现网页链接

    这包括改变文字颜色、背景色、边框、阴影等。例如,可以使用XML资源文件定义样式,或者在Java代码中动态设置属性。同时,利用selector(选择器)可以根据Button的状态(如按下、焦点、默认状态)改变其显示效果。 ...

    横向listview显示蒙文

    在这个布局中,可以设置一个TextView用于显示蒙古文,同时可能还需要考虑到字体和字号的设置,确保文字能正确地显示蒙古文字符。 2. **适配器(Adapter)**:创建一个自定义的Adapter,继承自`BaseAdapter`或`...

    android使用了自定义button自定义tabHost切换页面Demo

    1. **样式定制**:通过设置背景资源、文字颜色、文字大小等属性,使按钮外观符合设计稿。可以使用XML中的`&lt;selector&gt;`标签来定义不同状态(如按下、焦点)下的样式。 2. **点击效果**:通过重写`onTouchEvent()`...

    Android 处理OnItemClickListener时关于焦点颜色的设置问题

    这段代码中,`categoryTitle.setTextColor()`用于设置文字颜色,`categoryTitle.setBackgroundResource()`用于设置背景色,这里使用了一个名为`categorybar_item_background`的drawable资源。 如果我们想要通过XML...

    Android学习笔记五:基本视图组件:Button

    - 使用selector:定义一个state_list drawable资源,根据按钮的状态(如按下、正常)展示不同的背景和文字颜色。 5. **ButtonDemo项目** 提供的ButtonDemo可能是包含一个简单的Button示例应用,演示了如何创建、...

    仿照QQ菜单

    - 菜单项通常包含图标和文字,需要使用`ImageView`显示图标,`TextView`显示文字。 - 使用`LinearLayout`或`GridLayout`对菜单项进行排列,以便在屏幕中均匀分布。 2. **动画效果**: - 弹出动画:使用`...

    Android弹窗UI美化

    定义一个自定义主题,覆盖默认的窗口背景、文字颜色、按钮样式等。这样,所有使用这个主题的Dialog都会自动应用新的样式。 **触摸反馈** 为了提供更好的用户交互体验,可以为Dialog的元素添加触摸反馈,如点击后的...

    android常用控件属性方法事件说明.doc

    `textColorHint`规定了输入框为空时的提示文字颜色;`digits`限制输入的字符集,如只允许输入数字;`maxLength`设置最多输入的字符数;`password`模式下,输入的内容会被遮盖。 3. **Button**:Button作为用户交互...

    Android学习笔记(Android Studio)2-1~2-5(LinearLayout、RelativeLayout、TextView、Button、EditText、RadioButton)

    2. 文字颜色可以通过设置颜色资源或十六进制颜色代码实现。 3. 当文本过长时,可以使用`android:maxLines`限制最多显示的行数,`android:ellipsize`决定省略号的显示位置,如`"end"`表示末尾省略。 4. 通过`android:...

    自定义的TitleBar

    2. **样式定制**:通过修改背景颜色、文字颜色、按钮样式等属性,来满足视觉设计要求。可以使用Shape、selector等资源文件,为不同状态(如正常、选中、悬浮)设置不同的样式。 3. **事件处理**:TitleBar上的按钮...

Global site tag (gtag.js) - Google Analytics