我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Android开发基础 事件处理

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Android开发基础 事件处理

Android事件处理 1-基于监听的事件处理

基于监听的事件处理,其实就是为UI组件绑定事件监听器。
在事件监听处理模型中,主要涉及以下三个对象。
(1)Event Source(事件源):一般是指各个组件。
(2)Event(事件):一般指的是用户操作,该事件封装了组件上发生的各种特定事件。
(3)Event Listener(事件监听器):负责监听事件源所发生的事件,并对该事件做出响应。

首先我们简单介绍一下,事件的处理流程,首先是用事件监听器去监听事件源,当外动作触发事件源之后,会生成事件,事件监听器会获取事件,然后通过事件处理器对事件进行处理。

按钮的id为名称为button的按钮,按钮的文本名称是单击,按钮的宽和高是默认的包裹内容的。改好后的布局界面如图。
在这里插入图片描述下面我们在Main.Activity.java文件夹中,绑定按钮Id,设置监听器去监听,在Main.Activity.java文件夹中添加代码如下:我已在注释中解释了代码的含义。我用的是匿名内部类作为监听器。
注意:如果在添加代码后提示出错,把鼠标放在出错的地方,按钮快捷键Alt+Enter系统会自动为你导入缺省的包。

 Button button = (Button) findViewById(R.id.button) ; //绑定按钮Id,这个按钮名称一定要与布局文件中的一样
        button.setOnClickListener(new View.OnClickListener() { //设置按钮监听器,通过匿名内部类来实现
            @Override
            public void onClick(View view) { //Android studio自动重写Onclick 方法
                Toast.makeText(MainActivity.this,"单击了按钮", Toast.LENGTH_SHORT).show() ;//用Toast去显示按钮被点击了,显示时长为短暂
            }
        });

在Main.Activity.java文件夹中添加完代码后的界面如下
在这里插入图片描述好了一个按钮的监听就搞定了,下面我们运行一下,看看效果,点击图中所示,选中demo,点击绿色三角形运行,会弹出一个提示框,点击OK就可以了。
在这里插入图片描述大约一分钟之后,运行出界面,点击按钮后,有如下效果,代表监听成功。
在这里插入图片描述

2-基于回调的事件处理

其实就是处理哪一个回调事件就重写哪一个回调方法就可以了。
我们经常写的回调方法主要有以下几个:
(1)OnKeyDown():在该组件上按下某个按键触发
(2)OnTouchEvent():触发触摸屏时候触发
(3)OnKeyUp():松开某个键触发
当然不止这几个,还有长按某个键触发,触发轨迹球触发等。

下面我们来演示一个例子。

我们在Main.Activity.java文件夹中重写回调方法,代码如下

 @Override
    public boolean onKeyDown(int keyCode, KeyEvent event) {
        Toast.makeText(MainActivity.this, "按下", Toast.LENGTH_SHORT).show();
        return super.onKeyDown(keyCode, event);
    }
    @Override
    public boolean onKeyUp(int keyCode, KeyEvent event) {
        Toast.makeText(MainActivity.this, "抬起", Toast.LENGTH_SHORT).show();
        return super.onKeyUp(keyCode, event);
    }
    @Override
    public boolean onTouchEvent(MotionEvent event) {
        Toast.makeText(MainActivity.this, "触摸", Toast.LENGTH_SHORT).show();
        return super.onTouchEvent(event);
    }

分别是对OnKeyDown():在该组件上按下某个按触;OnTouchEvent():触发触摸屏时候触发;OnKeyUp():松开某个键触发三个回调方法的重写,重写后的Main.Activity.java文件夹的界面如下:
在这里插入图片描述下面我们运行一下,看看结果,点击绿色三角形运行,会弹出一个提示框,点击OK就可以了。
大约一两分钟,我们点击旁边音量的按键,会提示按下,你松开后,会提示抬起,你用鼠标单击触摸屏界面,它会显示触摸,如图所示,代表搞定了。
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
以上就是android事件处理的基本内容,如果对你有帮助,点个赞再走吧,谢谢!


作者:nuist__NJUPT


免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Android开发基础 事件处理

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Android开发基础 事件处理

Android事件处理 1-基于监听的事件处理 基于监听的事件处理,其实就是为UI组件绑定事件监听器。 在事件监听处理模型中,主要涉及以下三个对象。 (1)Event Source(事件源):一般是指各个组件。 (2)Event(事件):一
2022-06-06

Android事件分发机制(下) View的事件处理

综述在上篇文章Android中的事件分发机制(上)——ViewGroup的事件分发中,对ViewGroup的事件分发进行了详细的分析。在文章的最后ViewGroup的dispatchTouchEvent方法调用dispatchTransfo
2022-06-06

Android开发之Wifi基础教程

本文实例讲述了Android开发Wifi的基础知识。分享给大家供大家参考。具体如下: Android提供了WifiManager这个类,通过这个类可以进行wifi相关的各种操作。 通过wifiManager = (WifiManager)
2022-06-06

零基础开发 Node.js Addons 插件:参数与返回值处理

有时候我们需要对参数获取到的参数做一些校验,如果不符合我们的期望希望能抛出一些异常,Node-API 也为我们提供了一些错误信息的 API。

MyBatis ORM插件开发基础

MyBatis 是一款广泛使用的 Java 持久层框架,它通过 XML 或注解的方式将 Java 对象与 SQL 语句进行映射,从而简化了数据访问层的开发。插件开发是 MyBatis 扩展功能的一种方式,允许开发者自定义框架的行为。以下是
MyBatis ORM插件开发基础
2024-09-15

HarmonyOS 基础技术赋能之公共事件(CommonEvent)开发

系统将收集到的事件信息,根据系统策略发送给订阅该事件的用户程序。 公共事件包括:终端设备用户可感知的亮灭屏事件,以及系统关键服务发布的系统事件(例如:USB插拔,网络连接,系统升级)等。

Android Studio微信界面基础开发

Android Studio微信界面基础开发 基础页面开发 新建页面并编写#第一个框架处理,分为top,content,bottom事件处理函数MainActivity.java package com.example.wexin; imp
2022-06-06

Android移动应用开发基础2003291340

第一部分 1、单选题: 在下列选项中, 关于DDMS中Emulator Control功能的说法错误的是( )。 选项: A:模拟发送短信 B:模拟拨打电话 C:模拟发送经纬度信息 D:模拟电话信号 答案: 【模拟电话信号】 2、单选
2022-06-06

Android基础开发之手势识别

由于精确度等原因,手势识别在android中用的并不多,不过这并不妨碍我们来玩玩这个神奇的玩意。 在android中要使用手势,先得建立手势库,建立手势库非常简单,新建一个android sample project,建一个android示
2022-06-06

android开发基础教程—SharedPreferences读写

代码如下: public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.
2022-06-06

Android移动应用开发基础2003291341

第一部分 1、单选题: 在下列选项中, 关于DDMS中Emulator Control功能的说法错误的是( )。 选项: A:模拟拨打电话 B:模拟电话信号 C:模拟发送经纬度信息 D:模拟发送短信 答案: 【模拟电话信号】 2、单选
2022-06-06

Android应用事件处理

一. 实验目的 1.掌握内部类作为事件监听器的事件处理 2.掌握外部类作为事件监听器的事件处理 3.掌握基于回调的事件处理 二. 实验内容 1.内部类作为事件监听器。设计一个APP,界面包含一个EditText和一个Button。用户点击按
2022-06-06

android开发基础教程—文件存储功能实现

文件存储: 代码如下: public class MainActivity extends Activity { EditText mname, mage; TextView mtv; @Override protected void o
2022-06-06

wordpress开发之插件开发初识(wordpress插件开发基础)

首先,你要在wp-content/plugins/下建立一个文件夹,文件夹的名字最好只由字母、数字、“-”和下滑组成。同时,还要在这个文件夹下建立一个同名的php文件。比如你的文件夹名字为my-plugin,则php
2022-06-12

Android开发基础(用户登录布局)

本篇文章适用还未接触过android开发的小伙伴,提供很简单的案例,让大家快速上手,保持信心。 创建项目 UI布局 java代码逻辑实现 效果如下:一、创建项目 我们使用android studio开发,创建项目前的准备: 安装好andro
2022-06-06

在 Flutter 中使用 webview_flutter 4.0 | 基础用法与事件处理

大家好,我是 17。 Flutter WebView 一共写了四篇文章 在 Flutter 中使用 webview_flutter 4.0 | js 交互Flutter WebView 性能优化,让 h5 像原生页面一样优秀,已入选 掘金
2023-08-17

Android事件分发之View事件处理关键及示例分析

这篇文章主要为大家介绍了Android事件分发之View事件处理关键及示例分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
2023-02-14

编程热搜

  • Android:VolumeShaper
    VolumeShaper(支持版本改一下,minsdkversion:26,android8.0(api26)进一步学习对声音的编辑,可以让音频的声音有变化的播放 VolumeShaper.Configuration的三个参数 durati
    Android:VolumeShaper
  • Android崩溃异常捕获方法
    开发中最让人头疼的是应用突然爆炸,然后跳回到桌面。而且我们常常不知道这种状况会何时出现,在应用调试阶段还好,还可以通过调试工具的日志查看错误出现在哪里。但平时使用的时候给你闹崩溃,那你就欲哭无泪了。 那么今天主要讲一下如何去捕捉系统出现的U
    Android崩溃异常捕获方法
  • android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
    系统的设置–>电池–>使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数的1、我的手机中power_profile.xml的内容: HTC t328w代码如下:
    android开发教程之获取power_profile.xml文件的方法(android运行时能耗值)
  • Android SQLite数据库基本操作方法
    程序的最主要的功能在于对数据进行操作,通过对数据进行操作来实现某个功能。而数据库就是很重要的一个方面的,Android中内置了小巧轻便,功能却很强的一个数据库–SQLite数据库。那么就来看一下在Android程序中怎么去操作SQLite数
    Android SQLite数据库基本操作方法
  • ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
    工作的时候为了方便直接打开编辑文件,一些常用的软件或者文件我们会放在桌面,但是在ubuntu20.04下直接直接拖拽文件到桌面根本没有效果,在进入桌面后发现软件列表中的软件只能收藏到面板,无法复制到桌面使用,不知道为什么会这样,似乎并不是很
    ubuntu21.04怎么创建桌面快捷图标?ubuntu软件放到桌面的技巧
  • android获取当前手机号示例程序
    代码如下: public String getLocalNumber() { TelephonyManager tManager =
    android获取当前手机号示例程序
  • Android音视频开发(三)TextureView
    简介 TextureView与SurfaceView类似,可用于显示视频或OpenGL场景。 与SurfaceView的区别 SurfaceView不能使用变换和缩放等操作,不能叠加(Overlay)两个SurfaceView。 Textu
    Android音视频开发(三)TextureView
  • android获取屏幕高度和宽度的实现方法
    本文实例讲述了android获取屏幕高度和宽度的实现方法。分享给大家供大家参考。具体分析如下: 我们需要获取Android手机或Pad的屏幕的物理尺寸,以便于界面的设计或是其他功能的实现。下面就介绍讲一讲如何获取屏幕的物理尺寸 下面的代码即
    android获取屏幕高度和宽度的实现方法
  • Android自定义popupwindow实例代码
    先来看看效果图:一、布局
  • Android第一次实验
    一、实验原理 1.1实验目标 编程实现用户名与密码的存储与调用。 1.2实验要求 设计用户登录界面、登录成功界面、用户注册界面,用户注册时,将其用户名、密码保存到SharedPreference中,登录时输入用户名、密码,读取SharedP
    Android第一次实验

目录