Android中TextView中的文字颜色设置setTextColor的用法

         android中设置TextView的颜色有方法setTextColor,这个方法被重载了,可以传入两种参数。一种方法是传入int color值,要注意这个int不是R文件中自动分配的十六进制int值,这是Color类中的静态方法构造出来的颜色int值。另一种方法是通过ColorStateList得到xml中的配置的颜色的。好多需要xml中配置的都要类似这样的映射xml文件(比如一个按钮事件的选择器,默认状态为颜色A,点击时状态为颜色B等等选择效果)。

setTextColor的两种重载方法如下:

public void setTextColor(int color) {
    mTextColor = ColorStateList.valueOf(color);
    updateTextColors();
}

public void setTextColor(ColorStateList colors) {
    if (colors == null) {
        throw new NullPointerException();
    }

    mTextColor = colors;
    updateTextColors();
}

第一种重载方法有以下实现方式:

方法一:通过ARGB值的方式 

           textview.setTextColor(Color.rgb(255,255, 255));

           textview.setTextColor(Color.parseColor("#FFFFFF"));

方法二:通过资源引用

   textview.setTextColor(mContext.getResources().getColor(R.drawable.contact_btn_text_red))

        <drawablename="contact_btn_text_red">#f2497c</drawable>


第二种重载方法的实现:

textview.setTextColor(mContext.getResources().getColorStateList(R.drawable.big_btn_text_color));

选择器big_btn_text_color.xml

<span style="font-size:18px;"><?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
    <!-- 按下 -->
<item android:color="@drawable/contact_btn_text_white" android:state_enabled="true" android:state_pressed="true"></item>
    <!-- 默认 →
<item android:color="@drawable/contact_btn_text_red" android:state_enabled="true" android:state_pressed="false"></item>
    <!-- 禁用 -->
<item android:color="@drawable/contact_btn_text_gray" android:state_enabled="false"></item>
</selector>
</span>





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值