android用Selector实现Button三种状态下背景颜色的变化
来源:互联网 发布:isagraf 编程教程 编辑:程序博客网 时间:2024/05/29 21:16
为Button设置多种状态的selector
- 描述:有时候button需要有多种不同的状态对应不同的背景,如正常状态下颜色是紫色,但按下状态是绿色,不可点状态是灰色,对应的三种不同背景颜色。
- 实现:要实现按钮按下状态,可点状态,对应状态下不同的颜色,需要为selector设置三个item来对应不同状态,以实现不同背景颜色。
- 直接上动图,效果如下:
以下是各个状态下button所需要设置的背景颜色
selector item对应的颜色
注意点:
- 当控件不可点的时候,肯定是为灰色的,这里的selector第一项应该为控件不可点时的对应选项。
- 因为selector是按照item顺序来进行判断的,如果有一项符合则退出selector,不再进行下面item项的判断。
selector代码如下
<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"> <item android:state_enabled="false" android:drawable="@drawable/shape_bg_button_no_enable" /> <item android:state_pressed="false" android:drawable="@drawable/shape_bg_button_unpress" /><item android:state_pressed="true" android:drawable="@drawable/shape_bg_button_onpress" /></selector>
shape布局如下
1.button不可点状态:shape_bg_button_no_enable
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <!-- 圆角半径 --> <corners android:radius="200dp" /> <!-- 填充颜色 --> <solid android:color="@android:color/holo_blue_light"/> <!-- 线的宽度,颜色灰色 --> <stroke android:width="1dp" android:color="#fff" /> </shape>
- 1
2.button正常状态,可点未按下:shape_bg_button_unpress
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <!-- 圆角半径 --> <corners android:radius="200dp" /> <!-- 填充颜色 --> <solid android:color="@android:color/holo_purple"/> <!-- 线的宽度,颜色灰色 --> <stroke android:width="2dp" android:color="#fff" /> </shape>
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 92
3.button可点按下状态:shape_bg_button_onpress
<?xml version="1.0" encoding="utf-8"?><shape xmlns:android="http://schemas.android.com/apk/res/android" android:shape="rectangle" > <!-- 圆角半径 --> <corners android:radius="200dp" /> <!-- 填充颜色 --> <solid android:color="@android:color/holo_green_light"/> <!-- 线的宽度,颜色灰色 --> <stroke android:width="2dp" android:color="@android:color/holo_orange_dark" /> </shape>
- 1
- 2
- 12
阅读全文
0 0
- android用Selector实现Button三种状态下背景颜色的变化
- Android用Selector实现Button按下,不可点,正常三种状态下背景颜色的变化
- android selector 背景选择器的使用, button (未点击,点击,选中保持状态)效果实现
- Android通过selector选择器设置Button或者textview的背景颜色,字体颜色
- Android的selector,Button按钮背景选择器
- android的selector背景选择器(Button篇)
- Cocos2dx3.1中Button三种状态的变化
- android Button 点击背景与文字颜色变化效果
- Android的LinearLayout中 selector背景颜色
- Android的LinearLayout中 selector背景颜色
- 【安卓开发】JAVA代码设置selector不同状态下的背景颜色
- Button被选择之后,背景颜色的变化
- 使用XIB拖出来的UIButton,selected状态下,button出现多余背景颜色
- android 鼠标悬停状态下改变背景色(类似Button、listview item 的selector)
- 【android】[美化][selector] [state list] button 的背景切换
- Android设置Selector不同状态下颜色及图片
- Android设置Selector不同状态下颜色及图片
- Android设置Selector不同状态下颜色及图片
- http://www.cnblogs.com/eniac12/p/5329396.html
- 代码打补丁的利器——diff和patch
- 线程5:线程通信的补充:正确使用wait等
- 实践项目十一:Python批量图片切割(PIL)
- JAVA开发的23种设计模式之 --- 组合模式
- android用Selector实现Button三种状态下背景颜色的变化
- 全概率公式
- 数据结构学习心得——单链表
- JAVA23种设计模式总结
- 当使用BottomNavigationView菜单项多于3个时,去除动画效果,显示菜单项文字
- org.apache.jasper.JasperException: An exception occurred processing JSP page /WEB-INF/uses/userIndex
- 简单的时钟的做法
- Unity 物体跟随鼠标点击移动,判断物体是否在移动
- laravel学习之路4artisan