Android开发之Button控件以及Button事件处理


一.控件基础属性

由于button控件是继承的TextView控件,所以控件基本属性与textView基本相同,如果对textView不明白的可以看我的上一篇博客
https://blog.csdn.net/Lmz_0314/article/details/117076218
在这里插入图片描述
这里主要介绍的是StateListDrawable控件的属性

在这里插入图片描述

0.使用stateListDrawable前提

更改value中themes.xml的属性
在这里插入图片描述

1.创建一个button按钮

在man
效果:
在这里插入图片描述

2.实现按下按钮会出现不同展现方式的效果

按下按钮后并没有任何反应,想要实现按下去后变颜色的效果
先在res的drawable文件夹中创建一个新的selector文件,这里命名为btn_selector
(创建方法如下:
在这里插入图片描述
先导入测试的图片
在这里插入图片描述
导入了自带的两张图片
在这里插入图片描述
在btn_selector中输入以下代码
在这里插入图片描述
第一个控件中android:state_pressed=”true”表示按下时显示的图片
第二个控件中为默认时显示的图片

要使用该xml,在activity_main.xml中的backgroud属性中使用drawable中的btn_selector.xml
在这里插入图片描述
测试
在这里插入图片描述
持续点击时
在这里插入图片描述

3.实现按下后会有不同颜色的效果

设置一个颜色选择器
在res文件夹中创建color文件夹
在这里插入图片描述
在color中创建btn_color_selector.xml文件
在这里插入图片描述
在button中调用
在这里插入图片描述
测试:
在这里插入图片描述
持续点击时
在这里插入图片描述

(此处如果没有颜色改变,记得完成第一步。)

4.foreground属性及三层结构说明

在这里插入图片描述
在这里插入图片描述
前剪色最上面一层
文字在中间一层
背景在最后一层
人眼先看到前剪色,会覆盖下面的所有东西,foreground和background其他设置基本一样。也可以设置选择器。

二、Button事件处理

1.Button事件处理分类

1.点击事件
2.长按事件
3.触摸事件

2.事件处理函数

1.点击事件函数
在这里插入图片描述
2。长按事件
在这里插入图片描述
3.触摸事件
在这里插入图片描述

3.进行函数测试

设置一个检测函数
在这里插入图片描述
在这里插入图片描述

4.关于OnTouch的说明

在这里插入图片描述
在这里插入图片描述
可以看到使用getAction()获取OnTouch编号后,有三种结果
0为放上去,2为在上面移动,1为松手

5.关于返回值True和False的说明

按下按钮时,
先是OnTouch,如果返回为true,不会传给OnClick和OnLongClick,
再是OnLongClick,如果返回为true,不会传给OnClick
不会传指不会调用下一层的函数

6.时间函数在xml中实现

还可以直接在xml中实现,增加属性onclick
在这里插入图片描述
在这里插入图片描述
按住alt+enter
在这里插入图片描述
创建出新函数
自动创建方法
在这里插入图片描述
注释掉之前创建的点击事件函数,完善函数内容
在这里插入图片描述
进行测试
在这里插入图片描述
发现有OnClick出现

总结

之前学过后端开发,觉得button的事件处理十分重要,所以这部分需要好好掌握。
如果有不懂的可以提问啦。
参考的视频是享学的移动开发教程。

  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值