android开发之关于TextView的selector

来源:互联网 发布:wmf编辑软件 编辑:程序博客网 时间:2024/06/06 02:01

在开发中,大多数开发者都会尽可能的把代码抽取出来,可以说能抽多少是多少!这样的目的一是为了显示自己的技术很高大上,二是为了达到某一种功能需求,其实最主要的目的还是为了代码的复用和扩展!这也是"苦逼的程序猿"是怎么来的了,如果你学会了代码的优化,那么"苦逼"二字其实离你很远很远;代码的优化从点滴做起,做细节做起!

那么,接下来给大家说说TextView的字体颜色的不同点击下的显示,针对这样的需求,我们通常使用的是selector:

第一步:在/res/下创建一个文件夹名为drawable.

第二步:在/res/drawable/下新建text_selector.xml文件(文件名随意),注意在创建文件的过程中请选择selector为节点的xml文件.

第三步:在selector文件中编写如下代码:

<?xml version="1.0" encoding="utf-8"?>  <selector xmlns:android="http://schemas.android.com/apk/res/android">        <item android:<span style="color:#ff0000;"><strong>state_selected</strong></span>="true" android:color="@color/color_orange"></item>        <item android:state_selected="false" android:color="@color/color_999"></item>  </selector> 
还可以这样:

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android" >     <item android:<strong><span style="color:#ff0000;">state_pressed</span></strong>="true" android:color="@color/color_orange"></item>       <item android:state_pressed="false" android:color="@color/color_999"></item>  </selector>
第四步:在布局文件中引用该文件:

<TextViewandroid:id="@+id/tv_zt"android:layout_width="wrap_content"android:layout_height="wrap_content"<span style="color:#ff0000;"><strong>android:textColor="@drawable/text_selector"</strong></span>android:text="@string/zt"/>


在上面使用了android:color="color_orange"和android:color="color_999",为了大家理解,我将写得更详细一些:

<?xml version="1.0" encoding="utf-8"?>  <resources>      <color name="color_orange">#ff4e00</color>      <color name="color_999">#999999</color>  </resources>

0 0
原创粉丝点击