博客
关于我
【Android】Button之实现松开按钮和按下按钮背景图片或颜色不同
阅读量:371 次
发布时间:2019-03-05

本文共 916 字,大约阅读时间需要 3 分钟。

       

        StateListDrawable是Drawable资源的一种,可以根据不同的状态,设置不同的图片,关键节点selector,我们只需要将Button的background属性设置为该drawable资源即可实现按下按钮与松开按钮时背景图片不同。

1、drawable 引用的Drawable位图
2、state_focused 是否获得焦点
3、state_pressed 控件是否被按下
4、state_enabled 控件是否使能
5、state_selected 控件是否被选择(针对有滚轮的情况)
6、state_checked 控件是否被勾选
7、state_checkable 控件能否被勾选

       

一、背景图片不同

       

实现步骤:

1、在资源res里导入按钮按下时要显示的图片和松开时要显示的图片

在这里插入图片描述

        可以使用软件自带的图片:
在这里插入图片描述
        也可以导入自己计算机内的图片:
在这里插入图片描述

        我在下载的SVG格式的图片:

在这里插入图片描述

       

2、导入完成后,在工程目录下,点击“res”——“drawable”——“New”——“Drawable Resource File”,

在这里插入图片描述

       

3、弹出如下窗口,在File name处输入你想给它取的名字。

在这里插入图片描述

       

4、在 你取的名字.xml文件内写代码,设置按下去显示的图片和松开显示的图片。

在这里插入图片描述       代码示例:

       

5、在activity_main.xml文件内写android:background="@drawable/btn_selector",使用之前写好的选择器selector。

       

效果:

按下按钮: 松开按钮:

       

       

       

二、背景颜色不同

       

实现步骤:

1、在资源res里创建一个文件夹color

在这里插入图片描述

       

2、文件夹color内新建一个选择器selector

在这里插入图片描述

在这里插入图片描述

       

3、在 你取的名字.xml文件内写代码,设置按下去显示的颜色和松开显示的颜色。

在这里插入图片描述

       代码示例:

       

4、在activity_main.xml文件内写android:backgroundTint="@color/btn_color_selector",使用这个selector。

       

效果:

按下按钮: 松开按钮:

转载地址:http://uuvg.baihongyu.com/

你可能感兴趣的文章
MySQL面试题集锦
查看>>
mysql颠覆实战笔记(八)--mysql的自定义异常处理怎么破
查看>>
mysql驱动、durid、mybatis之间的关系
查看>>
mysql驱动支持中文_mysql 驱动包-Go语言中文社区
查看>>
MySQL高可用切换_(5.9)mysql高可用系列——正常主从切换测试
查看>>
MYSQL高可用集群MHA架构
查看>>
MySQL高级-MySQL并发参数调整
查看>>
MySQL高级-MySQL查询缓存优化
查看>>
MySQL高级-SQL优化步骤
查看>>
MySQL高级-视图
查看>>
MySQL高级-触发器
查看>>
mysql高级查询~分页查询
查看>>
MySQL(2)DDL详解
查看>>
MySQL:MySQL执行一条SQL查询语句的执行过程
查看>>
Mysql:SQL性能分析
查看>>
MySQL:判断逗号分隔的字符串中是否包含某个字符串
查看>>
MySQL:某个ip连接mysql失败次数过多,导致ip锁定
查看>>
Mysql:避免重复的插入数据方法汇总
查看>>
n 叉树后序遍历转换为链表问题的深入探讨
查看>>
nacos config
查看>>