文章详情

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

请输入下面的图形验证码

提交验证

短信预约提醒成功

Android开发基础 事件处理

2022-06-06 13:36

关注

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

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-移动开发
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯