这是我参与「第四届青训营 」笔记创作活动的第6天。
一、今日学习重点内容:
- Button
- 点击事件
- 长按点击事件
二、详细知识点介绍
Button
按钮控件Button由TextView派生而来,它们之间的区别有:
- Button拥有默认的按钮背景,而TextView默认无背景
- Button的内部文本默认居中对齐,而TextView的内部文本默认靠左对齐
- Button会默认将英文字母转为大写,而TextView保持原始的英文大小写
与TextView相比,Button增加了两个新属性;
- textAllCaps属性,它指定了是否将英文字母转为大写。
- onClick属性,它用来接管用户的点击动作,指定了点击按钮时要触发哪个方法。
代码示例
创建一个按钮,点击后可以显示当前时间。用onClick属性绑定doClick方法。
在onCreate方法里绑定Button的id(如果在doClick里绑定的话,每点击一次就会绑定一次)、声明全局变量tv_result。
这里创建了一个工具类,用于获取当前时间。
点击事件
代码示例
长按点击事件
-
监听器,是指专门监听控件的动作行为。只有控件发生了指定的动作,监听器才会触发开关去执行对应的代码逻辑。
-
按钮控件的两种常用监听器:
- 点击监听器,通过setOnClickLintener方法设置。按钮被按住少于500毫秒时,会触发点击事件。
- 长按监听器,通过setOnLongClickListener方法设置。按钮被按住超过500毫秒时,会触发长按事件。
代码演示
三、课后个人总结:
通过本节课,主要掌握了按钮的用法,Button最终也继承了View,在实现View方法的同时添加了独属于Button的属性,并且对比了Button和TextView对于文字的显示效果区别。