Button点击瞬间变换背景色和Textview点击瞬间变换字体颜色

  本章要写的知识点很基础,适合初学者,废话不多说,直奔主题咯!

  在res中建立一个color文件夹,在其中新建xml(这里为button_background.xml 和 text_color.xml):

  一、Button点击变换背景色

<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="false">
<shape>
<solid android:color="@color/white" />
</shape>
</item>

<item android:state_pressed="true">
<shape>
<solid android:color="@color/bg_info" />
</shape>
</item>
</selector>

然后设置你的Button属性:
<Button
android:id="@+id/tv_button"
android:layout_width="match_parent"
android:layout_height="45dp"
android:text="检索 "
android:textSize="14sp"
android:textColor="@color/bg_color"
android:layout_gravity="center"
android:background="@color/button_background"
android:clickable="true"
android:onClick="onClick"/>

 二、Textview点击变换字体颜色
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true" android:color="@color/tencent_tls_ui_deepgray"></item>
<item android:color="@color/white"></item>
</selector>
 然后设置你的Textview属性:
<TextView
android:id="@+id/tv_save"
android:layout_width="80dp"
android:layout_height="wrap_content"
android:layout_gravity="center_vertical"
android:layout_marginTop="3dp"
android:text="新病人注册"
android:textColor="@color/text_color"
android:clickable="true"
android:textSize="14sp" />

重点要讲一下的是clickable属性,默认该属性为false,此时TextView是不可点击的,也就不会有变换颜色的效果。所以要将该属性设为true。
 
 

  

原文地址:https://www.cnblogs.com/dmrbell/p/11647820.html