zoukankan      html  css  js  c++  java
  • TextView点击后背景颜色、文字颜色改变(转)

    转自:http://blog.csdn.net/u013278940/article/details/51152655

    TextView本没有点击效果,故为实现点击后文字颜色改变和背景改变,需要写selector进行点击时颜色的替换。效果图如下:

    未点击时:字颜色为黑色,背景为系统默认颜色。点击时:字体颜色为绿色,背景色为粉色。如下图所示:

    布局文件:

    res/layout/activity_main.xml

    [html] view plain copy
     
    1. <TextView  
    2.       android:layout_width="fill_parent"  
    3.       android:layout_height="60dp"  
    4.       android:paddingLeft="25dp"  
    5.       android:gravity="center_vertical"  
    6.       android:text="@string/hello_world"   
    7.       android:textSize="25dp"  
    8.       android:textColor="@color/textcolor_selector"  
    9.       android:background="@drawable/background_selector"  
    10.       android:clickable="true"  
    11.       android:focusable="true"/>  


    文字颜色:

    res/color/textcolor_selector.xml

    [html] view plain copy
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <selector xmlns:android="http://schemas.android.com/apk/res/android">  
    3.     <item android:state_focused="true" android:color="@color/green"></item>  
    4.     <item android:state_checked="true" android:color="@color/green"></item>  
    5.     <item android:state_pressed="true" android:color="@color/green"></item>  
    6.     <item android:color="@color/black"/>  
    7. </selector>  

    背景颜色
    res/drawable/background_selector.xml

    [html] view plain copy
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <selector xmlns:android="http://schemas.android.com/apk/res/android" >  
    3.     <item android:state_focused="true" android:drawable="@color/pink"></item>  
    4.     <item android:state_checked="true" android:drawable="@color/pink"></item>  
    5.     <item android:state_pressed="true" android:drawable="@color/pink"></item>  
    6. </selector>  


    涉及颜色值:

    res/values/color.xml

    [html] view plain copy
     
    1. <?xml version="1.0" encoding="utf-8"?>  
    2. <resources>  
    3.     <color name="white">#ffffffff</color>  
    4.     <color name="black">#ff000000</color>  
    5.     <color name="pink">#ffffcbd7</color>  
    6.     <color name="green">#ffbae4b6</color>      
    7. </resources>  

    注意事项:

    textview控件默认没有点击和焦点的,所以需要在布局文件中把clickable和focusable的值手动添加为true。

    Demo下载:

    网址:https://github.com/duhuan2015/TextViewTest    点击下载

  • 相关阅读:
    ansible-handlers
    LNMP
    编译安装sshpass
    cadence-irun(xrun) 增量编译
    sva 基础语法
    bsub && lsf 介绍
    Perl 输出内容到 excel
    Perl sendmail
    dlopen与dlsym用法
    perl在linux下通过date获取当前时间
  • 原文地址:https://www.cnblogs.com/weizhxa/p/8268467.html
Copyright © 2011-2022 走看看