常用属性:

android:state_selected——–选中
android:state_focused——–获得焦点,比如EditText
android:state_pressed——–是否按下比如Button,TextView,ImageView
android:state_checked——–是否选中,比如checkbox

1、 textview点击改变颜色



texview中的内容:必须有android:clickable=”true”这个属性,否则不会改变颜色

 <TextView        android:clickable="true"        android:textColor="@drawable/textcolor_selector"        android:gravity="center"        android:textSize="18sp"        android:text="点击改变颜色"        android:layout_width="wrap_content"        android:layout_height="wrap_content" />

textcolor_selector.xml代码

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:color="@color/textColor_selected" android:state_pressed="true"></item>    <item android:color="@color/textColor_unselected" android:state_pressed="false"></item></selector>

color.xml中的代码

<resources>    <color name="textColor_selected">#0000ff</color>    <color name="textColor_unselected">#000000</color></resources>

2、Button点击改变文字颜色

button代码,其余代码与textview设置的点击文字改变颜色一样。

<Button android:textColor="@drawable/textcolor_selecto" android:layout_marginTop="10dp" android:textSize="18dp" android:text="确定" android:layout_width="wrap_content" android:layout_height="wrap_content" />

3、Imageview的点击改变背景

imageview代码,也是必须设置 android:clickable=”true”属性。

 <ImageView  android:clickable="true" android:src="@drawable/image_selector" android:layout_marginTop="20dp" android:layout_width="100dp" android:layout_height="100dp" />

选择器的代码如下:

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@drawable/icon_click" android:state_pressed="true"></item>    <item android:drawable="@drawable/icon_unclick" android:state_pressed="false"></item></selector>

4、checkbox自定义选择器。


checkbox代码:
android:background=”@null”(去掉点击时灰色背景)
android:button=”@drawable/checkbox_selector”(给button设置选择器,而不是src或者background)

 <CheckBox        android:layout_marginTop="5dp"        android:layout_marginLeft="10dp"        android:background="@null"        android:button="@drawable/checkbox_selector"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:text="选中" />

checkbox_selector选择器的代码如下

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:drawable="@drawable/icon_check" android:state_checked="true"></item>    <item android:drawable="@drawable/icon_uncheck" android:state_checkable="false"></item></selector>

5、圆角的button。


button中的代码:

 <Button  android:layout_marginTop="5dp" android:layout_marginLeft="10dp" android:background="@drawable/button_round" android:text="圆角的button" android:layout_width="wrap_content" android:layout_height="wrap_content" />

在drawable中的button_ruond.xml代码:

<?xml version="1.0" encoding="UTF-8"?><shape  xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle">    <!-- 填充的颜色 -->    <solid android:color="#7f7f7f" />    <!-- 设置按钮的四个角为弧形 -->    <!-- android:radius 弧形的半径 -->    <corners android:radius="5dip" />    <!-- padding:Button里面的文字与Button边界的间隔 -->   <!-- <padding android:left="10dp" android:top="10dp" android:right="10dp" android:bottom="10dp" />--></shape>

6、边框设置。


为控件加上边框:在控件中设置一个这样的background就可以为控件加上边框。

<shape xmlns:android="http://schemas.android.com/apk/res/android" >    <!-- 圆角的弧度 -->    <corners android:radius="5.0dp" />    <!-- 背景颜色 -->    <solid android:color="#ffffff" />    <stroke  android:width="1dp" android:color="#9f9f9f" >    </stroke>    <!-- 与边框的距离 -->    <padding  android:bottom="3dp" android:left="3dp" android:right="3dp" android:top="3dp" />   <!--设置渐变色 -->   <!-- <gradient android:centerColor="#5f5f5f" android:endColor="#9f9f9f" android:startColor="#1f1f1f" /> --></shape>

还有一种不仅要圆角的button,而且点击变色
就是selector与shape的混合使用

<?xml version="1.0" encoding="utf-8"?><selector xmlns:Android="http://schemas.android.com/apk/res/android">    <item Android:state_pressed="true"><shape>            <corners Android:radius="5.0dp" />            <solid Android:color="#906EA2FC" />        </shape></item>    <item Android:state_pressed="false"><shape>            <corners Android:radius="5.0dp" />            <solid Android:color="#6EA2FC" />        </shape></item></selector>

更多相关文章

  1. android下访问sd卡和网络的权限
  2. LinearLayout按下(pressed)或获取焦点(focused)时背景设置不同颜
  3. 为Activity屏幕的标题添加图标
  4. Android在开机时自动启动一个应用程序
  5. 【代码】android 通过GPS获取用户地理位置并监听位置变化
  6. Android(安卓)隐藏底部导航栏后,第一次点击失效,第二次点击有效
  7. 实现Android(安卓)滑动退出Activity的功能
  8. Android:Bitmap->Drawble->Byte[]
  9. android之实现各个组件点击事件处理

随机推荐

  1. 手工解析腾讯视频真实 url 地址
  2. 分享:十年阿里架构师教你如何阅读Java源码
  3. 云服务器Windows2008如何实现一键安装环
  4. 你有一份免费的秋招秘籍急需领取
  5. php中的变量与多维数组
  6. Python中使用OpenCV库来进行简单的气象学
  7. php请求接口以及json和php中数组的转换,函
  8. 何为运营体系?
  9. 插画设计如何构图?插画构图参考
  10. php中遍历数组和购物车结算应用