Android开发0-1|安卓按键响应四种方式
目录标题
-
- 一、按键响应方式一
-
- 1.1 绑定onclick函数
- 1.2 按键响应函数实现
- 1.3 效果
- 二、按键响应方式二
-
- 2.1 定义监听器接口
- 2.2 绑定响应接口
- 2.3 效果
- 三、按键响应方式三
-
- 3.1 定义变量Button
- 3.2 绑定局部变量Button和xml中button
- 3.3 设置按键响应
- 3.4 效果
- 四、按键响应方式四
一、按键响应方式一 1.1 绑定onclick函数
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/7826eb11580a48a8ba67364bb4df20a7.png)
文章图片
当按键被按下就会去执行函数buttonBeClicked
1.2 按键响应函数实现
在MainActivity.java文件中去添加响应函数
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/15b425bd750d42daa32f27de5bbc7b6b.jpg)
文章图片
- View是组件类
- getId() 获取组件的 id
- R.id. 组件id都放在R类下的id类下
- Toast.makeText()
Toast: 是一个类,管理消息的提示
makeText(): Toast的一个方法,用来显示信息
第一个参数:this:是上下文参数,指当前页面显示
第二个参数:想要显示的内容。显示你想要在屏幕显示的内容
第三个参数:显示的时间,0代表默认
show():表示显示这个Toast消息提醒,如果不调用show()方法,这个Toast对象存在,但是并不会显示
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/8af1aab03e5346c6be43721b476ced7d.jpg)
文章图片
二、按键响应方式二 Android提供的基于事件监听接口有OnClickListener 等
OnClickListener接口:该接口处理的是点击事件。在触摸模式下,是在某个View上按下并抬起的组合动作,而在键盘模式下,是某个View获得焦点后点击确定键或者按下轨迹球事件
2.1 定义监听器接口
在Activity中定义一个内部类继承监听器接口,如果创建的是外部类就会导致Toast.makeText() 无法使用,注意的是使用Toast.makeText() 时第一个参数要使用MainActivity.this;在接口中实现业务代码
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/6c8d9a08267f450786accabc4fe9f5d7.png)
文章图片
class MyClickHundler implements View.OnClickListener{public void onClick(View v) {switch(v.getId()) {case R.id.button1:
Toast.makeText(MainActivity.this, "按键一按下", 0).show();
break;
case R.id.button2:
Toast.makeText(MainActivity.this, "按键二按下", 0).show();
default: break;
}
}
}
2.2 绑定响应接口
通过findViewById() 组件id进行绑定
定义变量Button:
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/57767b8643ca40a081c70b979df9517f.png)
文章图片
绑定局部变量Button和xml中button:
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/2c5e896e74434aae91d14ca73b06118e.png)
文章图片
设置按键响应:
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/95ca0edaea09423db9d55e4278be3564.png)
文章图片
按键这边无需进行绑定
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/1735ef33697946e6921c42664bac69b1.jpg)
文章图片
2.3 效果
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/8af1aab03e5346c6be43721b476ced7d.jpg)
文章图片
三、按键响应方式三 匿名内部类方式实现
3.1 定义变量Button
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/57767b8643ca40a081c70b979df9517f.png)
文章图片
3.2 绑定局部变量Button和xml中button
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/2c5e896e74434aae91d14ca73b06118e.png)
文章图片
3.3 设置按键响应
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/888c2c871632407489e4332fe3381f2b.jpg)
文章图片
该方式较为麻烦,每设置一个按键响应都要单独的去实现接口的方法
按键这边无需进行绑定
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/1735ef33697946e6921c42664bac69b1.jpg)
文章图片
3.4 效果
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/8af1aab03e5346c6be43721b476ced7d.jpg)
文章图片
四、按键响应方式四 直接让MainActivity去implements View.OnClickListener,然后重写onClick()
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/504a3b57ced547e5ae12f8ee22aec933.png)
文章图片
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/50d891752b9c406aa1929fdeee0dc691.jpg)
文章图片
定义变量Button:
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/d8d2c2f8c93a4c229e6ff4e77f27a314.jpg)
文章图片
绑定局部变量Button和xml中button:
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/2c5e896e74434aae91d14ca73b06118e.png)
文章图片
【Android开发0-1|安卓按键响应四种方式】设置按键响应:
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/95ca0edaea09423db9d55e4278be3564.png)
文章图片
按键这边无需进行绑定
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/1735ef33697946e6921c42664bac69b1.jpg)
文章图片
效果
![Android开发0-1|安卓按键响应四种方式](https://img.it610.com/image/info8/8af1aab03e5346c6be43721b476ced7d.jpg)
文章图片
推荐阅读
- CVE-2020-16898|CVE-2020-16898 TCP/IP远程代码执行漏洞
- android第三方框架(五)ButterKnife
- 深入理解Go之generate
- Android中的AES加密-下
- 标签、语法规范、内联框架、超链接、CSS的编写位置、CSS语法、开发工具、块和内联、常用选择器、后代元素选择器、伪类、伪元素。
- 带有Hilt的Android上的依赖注入
- 2020-10-18|2020-10-18 致各位慢友
- android|android studio中ndk的使用
- 2020-12(完成事项)
- Android事件传递源码分析