按键及触屏的事件:
Java代码
1.package com.yarin.Android.Examples_04_01;
2.
3.import android.app.Activity;
4.import android.os.Bundle;
5.import android.view.KeyEvent;
6.import android.view.MotionEvent;
7.import android.view.View;
8.import android.widget.Button;
9.import android.widget.Toast;
10./**
11. *
12. * 控件事件通过设置其控件的监听器来监听并处理事件
13. * 按键按下事件:通过重写onKeyDown方法
14. * 按键弹起事件:通过重写onKeyUp方法
15. * 触笔点击事件:通过实现onTouchEvent方法
16. * 示例中使用了Toast控件:
17. * Toast.makeText(this, string, Toast.LENGTH_SHORT).show();
18. * 显示提示信息
19. *
20. */
21.
22.public class Activity01 extends Activity
23.{
24.
25. public void onCreate(Bundle savedInstanceState)
26. {
27.
28. super.onCreate(savedInstanceState);
29.
30. setContentView(R.layout.main);
31. //获得Button对象
32. Button button_ok = (Button) findViewById(R.id.ok);
33. //设置Button控件监听器
34. button_ok.setOnClickListener(new Button.OnClickListener() {
35. public void onClick(View v)
36. {
37. //这里处理事件
38. DisplayToast("点击了OK按钮");
39. }
40. });
41.
42. }
43.
44. /* 按键按下所触发的事件 */
45. public boolean onKeyDown(int keyCode, KeyEvent event)
46. {
47. switch (keyCode)
48. {
49. case KeyEvent.KEYCODE_DPAD_CENTER:
50. DisplayToast("按下:中键");
51. break;
52. case KeyEvent.KEYCODE_DPAD_UP:
53. DisplayToast("按下:上方向键");
54. break;
55. case KeyEvent.KEYCODE_DPAD_DOWN:
56. DisplayToast("按下:下方向键");
57. break;
58. case KeyEvent.KEYCODE_DPAD_LEFT:
59. DisplayToast("按下:左方向键");
60. break;
61. case KeyEvent.KEYCODE_DPAD_RIGHT:
62. DisplayToast("按下:右方向键");
63. break;
64. }
65. return super.onKeyDown(keyCode, event);
66. }
67. /* 按键弹起所触发的事件 */
68. public boolean onKeyUp(int keyCode, KeyEvent event)
69. {
70. switch (keyCode)
71. {
72. case KeyEvent.KEYCODE_DPAD_CENTER:
73. DisplayToast("弹起:中键");
74. break;
75. case KeyEvent.KEYCODE_DPAD_UP:
76. DisplayToast("弹起:上方向键");
77. break;
78. case KeyEvent.KEYCODE_DPAD_DOWN:
79. DisplayToast("弹起:下方向键");
80. break;
81. case KeyEvent.KEYCODE_DPAD_LEFT:
82. DisplayToast("弹起:左方向键");
83. break;
84. case KeyEvent.KEYCODE_DPAD_RIGHT:
85. DisplayToast("弹起:右方向键");
86. break;
87. }
88.
89. return super.onKeyUp(keyCode, event);
90. }
91.
92. public boolean onKeyMultiple(int keyCode, int repeatCount, KeyEvent event)
93. {
94.
95. return super.onKeyMultiple(keyCode, repeatCount, event);
96. }
97.
98. /* 触笔事件 */
99. public boolean onTouchEvent(MotionEvent event)
100. {
101. int iAction = event.getAction();
102. if (iAction == MotionEvent.ACTION_CANCEL ||
103. iAction == MotionEvent.ACTION_DOWN ||
104. iAction == MotionEvent.ACTION_MOVE)
105. {
106. return false;
107. }
108. //得到触笔点击的位置
109. int x = (int) event.getX();
110. int y = (int) event.getY();
111.
112. DisplayToast("触笔点击坐标:("+Integer.toString(x)+","+Integer.toString(y)+")");
113.
114. return super.onTouchEvent(event);
115. }
116.
117. /* 显示Toast */
118. public void DisplayToast(String str)
119. {
120. Toast.makeText(this, str, Toast.LENGTH_SHORT).show();
121. }
122.}
@Override
public void onBackPressed() {
// 这里处理逻辑代码,cwj提示大家注意该方法仅适用于2.0或更新版的sdk
return;
}
分享到:
相关推荐
在Symbian操作系统中,尤其是S60平台,理解各个按键的功能和它们对应...总的来说,理解和掌握S60按键及其对应的代码键是使用和开发Symbian S60设备的基础。通过深入学习,你可以更加高效地利用设备功能,提升使用体验。
下面,我们将根据提供的部分键值列表,详细介绍键盘中部分按键及其对应的JS值: 1. **Backspace (8)**:用于删除光标前一个字符。 2. **Tab (9)**:用于在文本字段或其他可聚焦元素间切换焦点。 3. **Enter (13)**...
本文将详细介绍SWT中的按键及其对应的常量表、`KeyEvent`事件和`VerifyEvent`事件的相关知识,并通过示例进行说明。 #### 按键与对应的常量表 SWT定义了一系列的常量来表示不同的按键,这些常量通常用于按键事件的...
以上按键及其对应的键盘码对于编程、游戏设置、自动化脚本编写等场景尤为重要,了解这些基础知识有助于更高效地利用键盘资源,提升操作体验。例如,在玩经典街机游戏时,通过自定义按键映射,可以将虚拟机或模拟器的...
RK3188是一款高性能的四核ARM Cortex-A9处理器,广泛应用于平板电脑、智能电视和其他移动设备上。对于基于RK3188的设备而言,实现良好的用户体验很大程度上依赖于其硬件设备驱动的优化,特别是对实体按键的支持。...
每一行记录对应一个设备,从中可以找到设备对应的`/dev/input/eventX`路径以及设备支持的事件类型。 #### 输入事件结构体详解 Linux系统中的输入事件由`struct input_event`结构体表示,定义于`linux/input.h`...
本文将基于提供的“Pb—KeyCode枚举值与键盘对照表”,详细介绍各键盘按键对应的KeyCode值及其含义,帮助开发者更好地理解和应用这些值。 #### 一、KeyCode简介 KeyCode是一种用于表示键盘上各个按键的数值标识,...
首先,我们来看一下特殊功能键及其对应的键值: 1. **0x1**:未知键。 2. **0x2**:未知键。 3. **0x3 CANCEL**:取消键,用于中断当前操作。 4. **0x4 м**:未知键。 5. **0x8 BACKSPACE**:退格键,用于删除前一...
本压缩包文件"CDMA移动通信方法、系统和移动站设备.zip"包含了一份关于这一主题的PDF文档,主要涵盖了CDMA的核心概念、工作原理、系统架构以及移动站设备的相关知识。 CDMA的核心在于其扩频技术,每个用户的数据...
人机交互设备及其接口知识点汇总 在机电工程系领域中,人机交互设备及其接口是一个非常重要的知识点。人机交互设备是指用户与计算机之间进行交互的设备,而接口是指这些设备与计算机之间的连接方式。在本文中,我们...
这使得内核能够识别每一个按键及其功能。 2. **`button_irqs`数组**:这个数组列出了所有按键的详细信息,每个元素都是一个`button_irq_desc`类型的结构体实例,用于存储具体的按键配置。 3. **`key_values`数组**...
以下是关于全景拍照方法及其在移动终端应用的详细知识点: 1. **全景拍照原理**:全景照片是通过连续拍摄多张照片,然后将这些照片拼接在一起形成一个宽视角的图像。这个过程通常涉及到图像的捕捉、校正、对齐和...
中断是计算机系统中一种处理外部事件的有效方式,当外部设备(如按键)或内部硬件模块发生特定事件时,会向CPU发送一个中断请求,CPU暂停当前执行的任务,保存上下文,然后转去执行相应的中断服务程序(ISR,...
下面我们将详细介绍键盘上各按键所对应的ASCII码值及其用途。 #### 控制键 - **0x1**: 通常表示CLI(命令行界面)中的某些特定操作。 - **0x2**: 在某些系统中可能被解释为保留字符或特殊功能。 - **0x3 CANCEL**:...
本文将详细介绍`KeyPress`事件中的各种按键及其对应的`KeyAscii`值。 #### `KeyPress`事件基础 `KeyPress`事件是在键盘上的键被按下并释放时触发的事件。此事件可以用来检测特定键的按下状态,并允许程序基于这些键...
这通常是通过遍历预先定义的`protocolEventHandler`数组来完成的,数组中包含了每个事件及其对应的处理函数。一旦找到匹配的处理函数,就会调用该函数进行事件处理。在处理中断事件时,可能还需要额外的处理函数,如...
以下是一些常见的键盘按键及其虚拟键码: - **ESC键(27)**:退出或取消当前操作。 - **回车键(13)**:确认或执行命令。 - **TAB键(9)**:切换选项或移动焦点。 - **CapsLock键(20)**:切换大写锁定模式。 -...
在给定的文件中,列出了一系列的按键及其对应的 `keyCode` 值。这些 `keyCode` 值是根据标准键盘布局定义的,用于在 JavaScript 中标识特定的按键。下面是一些关键的映射关系: - **基本功能键**: - Backspace (`...
从给定的部分内容来看,我们可以看到一系列从0到至少123的KeyCode值及其对应的键盘按键名称。这些信息对于理解键盘布局和编写响应键盘输入的代码具有重要意义。下面,我们将详细介绍部分重要的KeyCode值及它们代表的...
移动通信实验旨在让学生深入理解移动通信的基本原理和技术,实验设备通常包括移动通信系统实验箱,如南京恒盾科技有限公司的HD-YD-II型系统。该系统由BS/MS收发信机单元、微机主控单元、有线接口单元、键盘与显示...