罗技键盘 功能键z,v,b键单按出现组合功能键效果

学习技术,分享技术。
Mac OS X 键盘快捷键 --- 很全面
OS X 键盘快捷键
键盘快捷键是通过按下键盘上的组合键来调用 OS X 功能的一种方式。了解有关常见 OS X 键盘快捷键的信息。
若要使用键盘快捷键,您可以同时按修饰键和字符键。例如,按下 Command 键(标有&&符号的按键)和“c”键会将当前选中的任何内容(文本、图形等)拷贝至剪贴板。这也称为 Command-C
键盘快捷键。
许多键盘快捷键中都包含修饰键。修饰键将改变 OS X 对其他键击或鼠标/触控板点按动作的解释方式。修饰键包括:Command、Shift、Alt键)、Control、Caps Lock 和
Fn 键。您可能需要在以下所列的某些组合键中使用 Fn 键。例如,如果键盘快捷键是 Control-F2,则按下 Fn-Control-F2 键。
以下是可能会出现在 OS X 菜单中的修饰键符号:
Command 键
&键(Alt键)(本文中所有出现此图标的都是 Alt 键)
启动快捷键
按下按键或组合键,直到所需的功能出现/显示(例如,在启动过程中按住&&键直到出现“启动管理器”)。注:如果启动功能不起作用,且您使用的是第三方键盘,请连接 Apple 键盘再试一次。
按键或组合键
显示所有可引导宗卷()
左侧 Shift
阻止自动登录
从可引导介质(DVD、CD、USB 闪存驱动器等等)启动。
从 NetBoot 服务器启动
强制 Mac OS X 启动(如果存在非 Mac OS X 启动宗卷)
使用 Apple Hardware Test
使用&(OS X Lion 或更高版本)
Command--P-R
&NVRAM/参数 RAM 设置
按住介质推出 (?) 键或 F12 键,或者鼠标或触控板按钮
推出活动光盘
睡眠和关机快捷键
按键或组合键
电源按钮 - OS X Mavericks
轻按以开机。开机后,轻按以唤醒或进入睡眠模式。
按住电源按钮 1.5 秒 - OS X Mavericks
显示“重新启动/睡眠/关机”对话框
按住电源按钮 5 秒
强制 Mac 关机
Command-Control-电源按钮
强制 Mac 重新启动
Control-介质推出键 (?)
显示“重新启动/睡眠/关机”对话框
Command--介质推出键 (?)
使电脑进入睡眠状态
Command-Control-介质推出键 (?)
退出所有应用软件(会让您先存储对已打开文稿所作的更改),然后重新启动电脑
Command--Control-介质推出键 (?)
退出所有应用软件(会让您先存储对已打开文稿所作的更改),然后关闭电脑
Shift-Control-介质推出键 (?)
使所有显示器进入睡眠状态
Finder 键盘快捷键
选中最前面的 Finder 窗口中的所有项(如果未打开任何窗口,则选中桌面内容)
Command--A
取消选择所有项
Command-Shift-A
打开“应用程序”文件夹
将选中的项目/文本拷贝至夹纸板
Command-Shift-C
打开“电脑”窗口
复制所选项
Command-Shift-D
打开桌面文件夹
查找任何匹配 Spotlight 属性的内容
Command-Shift-F
查找 Spotlight 文件名匹配项
Command--F
导航到已打开的 Spotlight 窗口中的搜索栏
Command-Shift-G
前往文件夹
Command-Shift-H
打开当前已登录用户帐户的个人文件夹
Command-Shift-Control-T
添加到 Dock
Command--I
显示检查器
Command-Control-I
获得摘要信息
Command-Shift-I
打开 iDisk
调出“显示”选项
连接服务器
Command-Shift-K
打开“网络”窗口
为所选项制作替身
最小化窗口
Command--M
最小化所有窗口
新建 Finder 窗口
Command-Shift-N
新建文件夹
Command--N
新建智能文件夹
打开所选项
Command-Shift-Q
Command-Shift--Q
显示(替身的)原身
添加到边栏
Command-Shift-T
添加到个人收藏
Command--T
在 Finder 窗口中隐藏工具栏/显示工具栏
Command-Shift-U
打开“实用工具”文件夹
Command--W
关闭所有窗口
Command--Y
幻灯片显示(Mac OS X v10.5 或更高版本)
以图标显示
以列表方式显示
以分栏方式显示
以 Cover Flow 方式显示(Mac OS X v10.5 或更高版本)
Command-逗号 (,)
打开 Finder 偏好设置
Command-重音符 (`)(美式英语键盘布局中 Tab 键上方的重音符键)
循环显示打开的 Finder 窗口
Command-Shift-问号 (?)
打开 Mac 帮助
Command-左中括号 ([)
前往上一文件夹
Command-右中括号 (])
前往下一文件夹
Command-上箭头
打开包含当前文件夹的文件夹
Command-Control-上箭头
在新窗口中打开包含当前文件夹的文件夹
Command-下箭头
打开高亮显示的项
Command-Shift-上箭头
使桌面处于活跃状态
右箭头(以列表视图显示)
打开所选文件夹
左箭头(以列表视图显示)
关闭所选文件夹
-点按显示三角形(以列表视图显示)
打开所选文件夹内的所有文件夹
在单独窗口中打开文件夹,并关闭当前窗口
Command-连按
在单独窗口中打开文件夹
Command-点按窗口标题
查看包含当前窗口的文件夹
Command-Tab
切换应用软件 - 向前循环显示
Command-Shift-Tab
切换应用软件 - 向后循环显示
Command-Delete
移至废纸篓
Command-Shift-Delete
清倒废纸篓
Command-Shift--Delete
清倒废纸篓(不显示确认对话框)
空格键(或 Command-Y)
快速查看(Mac OS X v10.5 或更高版本)
拖移时按 Command 键
将拖移的项移到其他宗卷/位置(按住按键时指针图标发生变化 - 请参阅)
拖移时按&&键
拷贝拖移的项(按住按键时指针图标发生变化 - 请参阅)
拖移时按 Command-&组合键
为拖移的项创建替身(按住按键时指针图标发生变化 - 请参阅)
应用软件和其他 OS X 快捷键
注:部分应用软件可能不支持以下所有应用软件组合键。
Command-空格键
显示或隐藏 Spotlight 搜索栏(如果安装了多语种,则可能在启用的脚本系统间循环)
移到行/段落的开头
向后移动一个字符
删除光标前的字符
移到行/段落的结尾
向前移动一个字符
删除光标后的字符
删除从光标前的字符到行/段落结尾的所有内容
将光标/所选内容置于可见区域**
在光标后插入一行
移调光标前后的字符
下移一个页面
删除光标左侧的词,以及词后的任何空格或标点符号
Command--空格键
显示 Spotlight 搜索结果窗口(如果安装了多语种,则可能在某一脚本下的键盘布局和输入法间循环)
Command-Tab
在打开的应用软件列表中,向下移动到下一个最近使用的应用软件
Command-Shift-Tab
在打开的应用软件列表中向上移动(按最近使用时间排序)
按反方向浏览各控件
Control-Tab
聚焦对话框中的下一组控件或聚焦下一个表格(当 Tab 移到下一个单元格时)
Shift-Control-Tab
聚焦上一组控件
Command-esc
打开 Front Row(如果已安装)
-介质推出键 (?)
从备选光盘驱动器中推出(如果已安装)
向前删除(适用于便携式 Mac 的内建键盘)
Command-F1
切换“镜像显示器”以进行多显示器配置
Command-F2
Command-F3
Command-F5
切换 VoiceOver 的开/关
打开“显示器”系统偏好设置
打开“Mission Control”系统偏好设置
-F10 或 F11 或 F12
打开“声音”系统偏好设置
Control-F3
App Exposé
Shift-Control-F6
聚焦上一个面板
Control-F7
临时覆盖窗口和对话框中的当前键盘访问模式
Control-F8
移到菜单栏中的状态菜单
拼贴或取消拼贴所有打开的窗口
拼贴或取消拼贴当前活跃应用软件中所有打开的窗口
隐藏或显示所有打开的窗口
隐藏或显示 Dashboard
Command-重音符 (`)
激活最前面的应用软件中下一个打开的窗口
Command-Shift-重音符 (`)
激活最前面的应用软件中上一个打开的窗口
Command--重音符 (`)
聚焦窗口抽屉
Command-减号 (–)
缩小所选项
使所选内容左对齐
使所选内容右对齐
使所选内容居中对齐
Command-冒号 (:)
显示“拼写”窗口
Command-分号 (;)
查找文稿中拼写错误的词
Command-逗号 (,)
打开最前面的应用软件的偏好设置窗口(前提是应用软件支持此键盘快捷键)
Command--Control-逗号 (,)
降低屏幕对比度
Command--Control-句点 (.)
增强屏幕对比度
Command-问号 (?)
在帮助显示程序中打开应用软件的帮助
Command--/
打开或关闭字体平滑功能
Command-Shift-=
放大所选项
Command-Shift-3
将屏幕捕捉到文件
Command-Shift-Control-3
将屏幕捕捉到夹纸板
Command-Shift-4
将所选内容捕捉到文件
Command-Shift-Control-4
将所选内容捕捉到夹纸板
高亮显示文稿或窗口中的所有项,或高亮显示文本栏中的所有字符
以粗体显示所选文本或切换文本粗体显示开/关
将所选数据拷贝到夹纸板
Command-Shift-C
显示“颜色”窗口
Command--C
拷贝所选文本的样式
Command-Control-C
拷贝所选项的格式设置并存储到夹纸板
Command--D
显示或隐藏 Dock
Command-Control-D
在“字典”应用软件中显示所选词的定义
在“打开和存储”对话框中选择“桌面”文件夹
在 Mac OS X v10.6.8 及更低版本中,选择含有“不存储”按钮的对话框中的“不存储”
Command-Delete
在 OS X Lion 和 Mountain Lion 中,选择含有“不存储”按钮的对话框中的“不存储”
使用所选内容进行查找
打开“查找”窗口
Command--F
移到搜索栏控件
查找所选内容出现的下一个位置
Command-Shift-G
查找所选内容出现的上一个位置
隐藏当前正在运行的应用软件窗口
Command--H
隐藏所有其他正在运行的应用软件窗口
以斜体显示所选文本或切换文本斜体显示开/关
Command--I
显示检查器窗口
滚动到所选部分
将活跃窗口最小化至 Dock
Command--M
将活跃应用软件的所有窗口最小化至 Dock
在最前面的应用软件中创建新文稿
显示对话框,用于选择要在最前面的应用软件中打开的文稿
显示“打印”对话框
Command-Shift-P
显示用于指定打印参数(页面设置)的对话框
退出最前面的应用软件
存储活跃文稿
Command-Shift-S
显示“存储为”对话框
显示“字体”窗口
Command--T
显示或隐藏工具栏
对所选文本加下划线或打开/关闭加下划线功能
在插入点位置粘贴夹纸板内容
Command--V
将某对象的样式应用于所选对象(粘贴样式)
Command-Shift--V
将周围文本的样式应用于所插入对象(粘贴并匹配样式)
Command-Control-V
将格式设置应用于所选对象(粘贴标尺命令)
关闭最前面的窗口
Command-Shift-W
关闭文件及其关联窗口
Command--W
不退出应用软件直接关闭其所有窗口
移去所选内容并存储到夹纸板
还原上一命令(有些应用软件允许多次还原)
Command-Shift-Z
重做上一命令(有些应用软件允许多次重做)
Control-右箭头
聚焦视图(如表格)内的另一个值或单元格
Control-左箭头
聚焦视图(如表格)内的另一个值或单元格
Control-下箭头
聚焦视图(如表格)内的另一个值或单元格
Control-上箭头
聚焦视图(如表格)内的另一个值或单元格
Command-右箭头
将文本插入点移至当前行的行尾
Command-左箭头
将文本插入点移至当前行的行首
Command-下箭头
将文本插入点移至文稿的结尾
Command-上箭头
将文本插入点移至文稿的开头
将文本插入点移至下一个单词的结尾
将文本插入点移至上一个单词的开头
Command-Shift-右箭头
选中插入点与当前行行尾之间的文本 (*)
Command-Shift-左箭头
选中插入点与当前行行首之间的文本 (*)
Shift-右箭头
将文本选择范围向右扩展一个字符 (*)
Shift-左箭头
将文本选择范围向左扩展一个字符 (*)
Command-Shift-上箭头
选中插入点与文稿开头之间的文本 (*)
Command-Shift-下箭头
选中插入点与文稿结尾之间的文本 (*)
Shift-上箭头
将文本选择范围扩展到上一行相同水平位置的最近字符边缘 (*)
Shift-下箭头
将文本选择范围扩展到下一行相同水平位置的最近字符边缘 (*)
Shift--右箭头
将文本选择范围扩展到当前词的词尾,再按一次则扩展到后一词的词尾 (*)
Shift--左箭头
将文本选择范围扩展到当前词的词首,再按一次则扩展到后一词的词首 (*)
Shift--下箭头
将文本选择范围扩展到当前段落的段尾,再按一次则扩展到下一段落的结尾 (*)
Shift--上箭头
将文本选择范围扩展到当前段落的段首,再按一次则扩展到下一段落的段首 (*)
Control-空格键
在当前输入源和上一输入源之间切换
-Control-空格键
在所有启用的输入源之间切换
Command--esc
Command-Shift--Esc(按住三秒钟)
最前面的应用软件(Mac OS X v10.5 或更高版本)
Command-左中括号 ([)
上一浏览器网页
Command-右中括号 (])
下一浏览器网页
*注:如果未选择任何文本,则从插入点位置开始扩展。如果通过拖移选择文本,则从所选内容的边缘开始扩展。反向选择所选内容会取消选择相应部分。
万能辅助 -&&键盘命令
有关 Mac OS X v10.6 中 VoiceOver 组合键差异的信息,请参阅。
Command-F5 或 Fn-Command-F5
打开或关闭 VoiceOver
-Control-F8 或 Fn--Control-F8
打开 VoiceOver 实用工具(如果 VoiceOver 已打开)
-Control-F7 或 Fn--Control-F7
显示 VoiceOver 菜单(如果 VoiceOver 已打开)
-Control-分号 (;)
启用/停用 VoiceOver 控制选项锁定
Command--8
打开或关闭“缩放”
Command--加号 (+)
Command--减号 (–)
Command--Control-8
反转/复原(OS X Lion 或更低版本)
Command--Control-逗号 (,)
降低对比度(OS X Lion 或更低版本)
Command--Control-句点 (.)
增强对比度(OS X Lion 或更低版本)
注:您可能需要在“键盘”偏好设置中启用“将 F1、F2 等键用作标准功能键”,才能使 VoiceOver 菜单和实用工具正常工作。
全键盘访问
通过全键盘访问,您可以使用键盘来导航,以及与屏幕上的项进行交互。使用以下快捷键可选择并调整诸如文本栏和滑块之类的控件。
移至下一个控件
移至上一个控件
Control-Tab
已选择文本栏时移至下一个控件
移至列表、标签组或菜单中的相邻项
移动滑块和调整器(用于增加和减小值的垂直上下箭头)
Control-箭头键
移至与文本栏相邻的控件
空格键
选择高亮显示的菜单项
Return 键或 Enter 键
点按默认按钮或执行默认操作
点按“取消”按钮
关闭菜单而未选取项目
您可以在菜单栏中浏览菜单,而无需使用鼠标或触控板。若要将焦点置于菜单栏中,请按下 Control-F2(便携式键盘上的 Fn-Control-F2)。然后使用下列组合键。
左箭头和右箭头
从一个菜单移到另一个菜单
打开所选菜单
上箭头和下箭头
移至所选菜单中的菜单项
键入菜单项的名称
跳到所选菜单中的菜单项
选择菜单项
万能辅助 - 鼠标键
在“万能辅助”偏好设置中打开后,您可以使用键盘或数字小键盘上的键移动鼠标指针。如果电脑没有数字小键盘,请使用
Fn(功能)键。
沿对角线向左下角移
沿对角线向右下角移
沿对角线向左上角移
沿对角线向右上角移
按鼠标按钮
按住鼠标按钮
.(数字小键盘上的句点)
释放按住的鼠标按钮
没有更多推荐了,
加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!android按键静音键功能实现
实现P931项目蓝牙键盘静音键功能以及打印F1,F2键信息打印
准备工作:
1.下载android4.0.3系统
git clone gitolite@scm:vc0882/sdk_4.0
(使用git pull可以更新本地文件)
2.修改代码
修改思路:Android已经定义了比较丰富、完整的标准按键。在一般情况下,不需要为Android系统增加按键,只需要根据kl配置按键即可。在系统中有比较奇特按键的时候,需要更改Android系统的框架层来更改按键。
底层驱动已经实现相应按键驱动。
1&.kernel/include/linux/input.h
察看F1,F2,MUTE按键映射到Linux的值
#define KEY_MUTE113
#define KEY_F1 59
#define KEY_F2 60
#define KEY_BRIGHTNESSDOWN 224
#define KEY_BRIGHTNESSUP 225
2&.frameworks/base/data/keyboards/qwerty.kl
将1中查到的的值添加到配置文件qwerty.kl中,以便映射到上层应用
add by huanggenda
key 113 MUTE
key 0x1d0 FN
key 224 BRIGHTNESSDOWN&
key 225 BRIGHTNESSUP&
#the end by huanggenda
3&.framework/core/res/res/values/attrs.xml&
此文件为linux映射到应用的值,以供应用程序调用
4&.在framework/base/policy/src/com/android/impl/PhoneWindowManager.java
按键code察看调试:
//modify false to true for debug
if (true) {
Log.d(TAG, "interceptKeyTi keyCode=" + keyCode + " down=" + down +
" repeatCount="
+ repeatCount + " keyguardOn=" + keyguardOn + " mHomePressed=" +
mHomePressed);
//The function of F2 and F1 add by huanggenda
if(keyCode == KeyEvent.KEYCODE_F2)
Log.d(TAG, "interceptKeyTi keyCode=" + keyCode + " F2");
if(keyCode == KeyEvent.KEYCODE_F3)
Log.d(TAG, "interceptKeyTi keyCode=" + keyCode +" F3");
if(keyCode == KeyEvent.KEYCODE_BRIGHTNESSDOWN)
Log.d(TAG, "interceptKeyTi keyCode=" + keyCode + "
BRIGHTNESSDOWN");
if(keyCode == KeyEvent.KEYCODE_BRIGHTNESSUP)
Log.d(TAG, "interceptKeyTi keyCode=" + keyCode +"
BRIGHTNESSUP");
//The end by huanggenda
5&.framework/base/media/java/android/media/AudioManager.java
处理音量键方法:
public void handleKeyDown(int keyCode, int stream) {
boolean mute = isStreamMute(AudioManager.STREAM_MUSIC);
switch (keyCode) {
case KeyEvent.KEYCODE_VOLUME_UP:
case KeyEvent.KEYCODE_VOLUME_DOWN:
if (mute) {
setStreamMute(AudioManager.STREAM_MUSIC, false);
int volume = getStreamVolume(AudioManager.STREAM_MUSIC);
if (volume == 0) {
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
setStreamMute(AudioManager.STREAM_MUSIC, true);
} else if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
setStreamMute(AudioManager.STREAM_SYSTEM, false);
setStreamMute(AudioManager.STREAM_NOTIFICATION, false);
setStreamMute(AudioManager.STREAM_SYSTEM, false);
setStreamMute(AudioManager.STREAM_NOTIFICATION, false);
adjustStreamVolume(AudioManager.STREAM_MUSIC,&
AudioManager.ADJUST_SAME,&
AudioManager.FLAG_SHOW_UI);
int flags = FLAG_SHOW_UI | FLAG_VIBRATE;
if (mVolumeControlStream != -1) {
stream = mVolumeControlS
flags |= FLAG_FORCE_STREAM;
adjustSuggestedStreamVolume(
keyCode == KeyEvent.KEYCODE_VOLUME_UP
? ADJUST_RAISE
: ADJUST_LOWER,
if (stream == AudioManager.STREAM_MUSIC) {
int v = getStreamVolume(AudioManager.STREAM_MUSIC);
mute = isStreamMute(AudioManager.STREAM_MUSIC);
if (!mute && (v == 0)) {
setStreamMute(AudioManager.STREAM_SYSTEM, true);
setStreamMute(AudioManager.STREAM_MUSIC, true);
setStreamMute(AudioManager.STREAM_NOTIFICATION, true);
adjustStreamVolume(stream,
AudioManager.ADJUST_SAME,&
AudioManager.FLAG_SHOW_UI);
case KeyEvent.KEYCODE_VOLUME_MUTE:
// TODO: Actually handle MUTE.
setStreamMute(AudioManager.STREAM_SYSTEM, mute);
setStreamMute(AudioManager.STREAM_MUSIC, mute);
setStreamMute(AudioManager.STREAM_NOTIFICATION, mute);
adjustStreamVolume(AudioManager.STREAM_MUSIC,&
AudioManager.ADJUST_SAME,&
AudioManager.FLAG_SHOW_UI);
3.编译系统
. build/envsetup.sh
lunch 3 (android4.0.1是10,android4.0.3是4)
make clean
4.系统烧录工具, &
&nand_tool_new,packet_tool_4.0,这两个工具是由中星微原厂提供,使用方法:
步骤一:运行packet_tool_4.0中Vortexpacket.exe,加载ubi.cache8k_256_2048.img,ubi.data8k_256_2048.img,ubi.system8k_256_2048.img,ubi.userdata8k_256_2048.img四个文件,这四个文件在out/target/product/vortex/8k_256_2048/
目录下,然后点击转换按钮进行转换生成vortex.pak文件
步骤二:运行&nand_tool_new中MPTool.exe,设置vortex.pak路径,再扫描设备,在下载系统就可以了。
-----------------------------------------------------------
这一部分主要是移植android的键盘和按键
(1)Android使用标准的linux输入事件设备(/dev/input目录下)和驱动,按键定义在内核include/linux/input.h文件中,
按键定义形式如下:
KEY_ESC&&&
(2)内核中(我的平台是arch/arm/mach-mmp/merlin.c文件)中按键的定义如下形式:
static struct
gpio_keys_button btn_button_table[] = {
MFP_PIN_GPIO2,
.active_low&&&
=&&& "H_BTN
.debounce_interval&&&
MFP_PIN_GPIO3,
.active_low&&&
=&&& "O_BTN
.debounce_interval&&&
MFP_PIN_GPIO1,
.active_low&&&
=&&& "S_BTN
.debounce_interval&&&
static struct
gpio_keys_platform_data gpio_keys_data = {
.buttons& = btn_button_table,
.nbuttons = ARRAY_SIZE(btn_button_table),
static struct
platform_device gpio_keys = {
.name = "gpio-keys",
.platform_data = &gpio_keys_data,
.id&& = -1,
上面定义是将MFP_PIN_GPIO2这个GPIO口的按键映射到Linux的KEY_F1按键,MPF_PIN_GPIO3映射到KEY_F2,MFP_PIN_GPIO1映射到KEY_F4
(3)上面(2)步实现了从硬件GPIO口到内核标准按键的映射,但是android并没有直接使用映射后的键值,而且对其再进行了一次映射,从内核标准键值
到android所用键值的映射表定义在android文件系统的/system/usr/keylayout目录下。标准的映射文件为qwerty.kl,定义如下:
399&& GRAVE
BACK&&&&&&&&&&&&&
WAKE_DROPPED
SOFT_RIGHT&&&&&&&
SOFT_RIGHT&&&&&&&
ENDCALL&&&&&&&&&&
WAKE_DROPPED
ENDCALL&&&&&&&&&&
WAKE_DROPPED
MENU&&&&&&&&&&&&&
WAKE_DROPPED
MENU&&&&&&&&&&&&&
WAKE_DROPPED
MENU&&&&&&&&&&&&&
WAKE_DROPPED
SEARCH&&&&&&&&&&&
WAKE_DROPPED
SEARCH&&&&&&&&&&&
WAKE_DROPPED
228&& POUND
227&& STAR
CALL&&&&&&&&&&&&&
WAKE_DROPPED
CALL&&&&&&&&&&&&&
WAKE_DROPPED
DPAD_CENTER&&&&&&
WAKE_DROPPED
DPAD_DOWN&&&&&&&&
WAKE_DROPPED
DPAD_UP&&&&&&&&&&
WAKE_DROPPED
HOME&&&&&&&&&&&&&
DPAD_LEFT&&&&&&&&
WAKE_DROPPED
DPAD_RIGHT&&&&&&&
WAKE_DROPPED
115&& VOLUME_UP
VOLUME_DOWN
POWER&&&&&&&&&&&&
212&& CAMERA
LEFT_BRACKET
RIGHT_BRACKET
APOSTROPHE
100&& ALT_RIGHT
SHIFT_LEFT
SHIFT_RIGHT
150&& EXPLORER
ENVELOPE&&&&&&&&
(4)android对底层按键的处理方法
android按键的处理是Window
Manager负责,主要的映射转换实现在android源代码frameworks/base/libs/ui/EventHub.cpp
此文件处理来自底层的所有输入事件,并根据来源对事件进行分类处理,对于按键事件,处理过程如下:
(a)记录驱动名称为
(b)获取环境变量ANDROID_ROOT为系统路径(默认是/system,定义在android源代码/system/core/rootdir/init.rc文件中)
(c)查找路径为"系统路径/usr/keylayout/驱动名称.kl"的按键映射文件,如果不存在则默认用路径为"系统路径/usr/keylayout/qwerty.kl"
这个默认的按键映射文件,映射完成后再把经映射得到的android按键码值发给上层应用程序。
所以我们可以在内核中定义多个按键设备,然后为每个设备设定不同的按键映射文件,不定义则会默认用qwerty.kl
上面(2)步我们在内核中声明了一个名为"gpio-keys"的按键设备,此设备定义在内核drivers/input/keyboard/gpio_keys.c文件中
然后我们在内核启动过程中注册此设备:&
platform_device_register(&gpio_keys);
然后我们可以自己定义一个名为gpio-keys.kl的android按键映射文件,此文件的定义可以参考querty.kl的内容,比如说我们想将MPF_PIN_GPIO3
对应的按键作android中的MENU键用,首先我们在内核中将MPF_PIN_GPIO3映射到KEY_F2,在内核include/linux/input.h中查找KEY_F2发现
参照KEY_F2的值我们在gpio-keys.kl中加入如下映射即可
MENU&&&&&&&&&&&&&
其它按键也照此添加,完成后将按键表放置到/system/usr/keylayout目录下即可。
(1)android按键设备的映射关系可以在logcat开机日志中找的到(查找EventHub即可)
(2)android按键设备由Window
Manager负责,Window
Manager从按键驱动读取内核按键码,然后将内核按键码转换成android按键码,转换完成
Manager会将内核按键码和android按键码一起发给应用程序来使用,这一点一定要注意。
-----------------------------------------------------------
KEYCODE列表
键名&&键值
KEYCODE_CALL
KEYCODE_ENDCALL
KEYCODE_HOME
KEYCODE_MENU
KEYCODE_BACK
KEYCODE_SRCH
KEYCODE_CAMERA
KEYCODE_FOCUS
拍照对焦键
KEYCODE_POWER
KEYCODE_NOTIFICATION
KEYCODE_MUTE
话筒静音键
KEYCODE_VOLUME_MUTE
扬声器静音键
KEYCODE_VOLUME_UP
音量增加键
KEYCODE_VOLUME_DOWN
音量减小键
键名 描述 键值
KEYCODE_ENTER
KEYCODE_ESCAPE
KEYCODE_DPAD_CENTER
KEYCODE_DPAD_UP
导航键 向上
KEYCODE_DPAD_DOWN
导航键 向下
KEYCODE_DPAD_LEFT
导航键 向左
KEYCODE_DPAD_RIGHT
导航键 向右
KEYCODE_MOVE_HOME
光标到开始键
KEYCODE_MOVE_END
光标移动到末尾键
KEYCODE_PAGE_UP
向上翻页键
KEYCODE_PAGE_DOWN
向下翻页键
KEYCODE_DEL
KEYCODE_FORWARD_DEL
KEYCODE_SERT
KEYCODE_TAB
KEYCODE_NUM_LOCK
KEYCODE_CAPS_LOCK
大写锁定键
KEYCODE_BREAK
Break/Pause键
KEYCODE_SCROLL_LOCK
滚动锁定键
KEYCODE_ZOOM_IN
KEYCODE_ZOOM_OUT
KEYCODE_ALT_LEFT
KEYCODE_ALT_RIGHT
KEYCODE_CTRL_LEFT
Control+Left
KEYCODE_CTRL_RIGHT
Control+Right
KEYCODE_SHIFT_LEFT
Shift+Left
KEYCODE_SHIFT_RIGHT
Shift+Right
键名 描述 键值
KEYCODE_PLUS
KEYCODE_MINUS
KEYCODE_STAR
KEYCODE_SLASH
KEYCODE_EQUALS
KEYCODE_AT
KEYCODE_POUND
KEYCODE_APTROPHE
按键''' (单引号)
KEYCODE_BACKSLASH
KEYCODE_COMMA
KEYCODE_PERIOD
KEYCODE_LEFT_BRACKET
KEYCODE_RIGHT_BRACKET
KEYCODE_ICOLON
KEYCODE_GRAVE
KEYCODE_SPACE
KEYCODE_NUMPAD_0
小键盘按键'0'
KEYCODE_NUMPAD_1
小键盘按键'1'
KEYCODE_NUMPAD_2
小键盘按键'2'
KEYCODE_NUMPAD_3
小键盘按键'3'
KEYCODE_NUMPAD_4
小键盘按键'4'
KEYCODE_NUMPAD_5
小键盘按键'5'
KEYCODE_NUMPAD_6
小键盘按键'6'
KEYCODE_NUMPAD_7
小键盘按键'7'
KEYCODE_NUMPAD_8
小键盘按键'8'
KEYCODE_NUMPAD_9
小键盘按键'9'
KEYCODE_NUMPAD_ADD
小键盘按键'+'
KEYCODE_NUMPAD_SUBTRACT
小键盘按键'-'
KEYCODE_NUMPAD_MULTLY
小键盘按键'*'
KEYCODE_NUMPAD_DIV
小键盘按键'/'
KEYCODE_NUMPAD_EQUALS
小键盘按键'='
KEYCODE_NUMPAD_COMMA
小键盘按键','
KEYCODE_NUMPAD_DOT
小键盘按键'.'
KEYCODE_NUMPAD_LEFT_PAREN
小键盘按键'('
KEYCODE_NUMPAD_RIGHT_PAREN
小键盘按键')'
KEYCODE_NUMPAD_ENTER
小键盘按键回车
KEYCODE_F1
KEYCODE_F2
KEYCODE_F3
KEYCODE_F4
KEYCODE_F5
KEYCODE_F6
KEYCODE_F7
KEYCODE_F8
KEYCODE_F9
KEYCODE_F10
KEYCODE_F11
KEYCODE_F12
KEYCODE_IA_PLAY
多媒体键 播放
KEYCODE_MEDIA_STOP
多媒体键 停止
KEYCODE_MEDIA_PAUSE
多媒体键 暂停
KEYCODE_MEDIA_PLAY_PAUSE
多媒体键 播放/暂停
KEYCODE_MEDIA_FAST_FORWARD
多媒体键 快进
KEYCODE_MEDIA_REWIND
多媒体键 快退
KEYCODE_MEDIA_NEXT
多媒体键 下一首
KEYCODE_MEDIA_EVIOUS
多媒体键 上一首
KEYCODE_MEDIA_CLOSE
多媒体键 关闭
KEYCODE_MEDIA_EJECT
多媒体键 弹出
KEYCODE_MEDIA_RECORD
多媒体键 录音
KEYCODE_BUTTON_1
通用手柄按钮 #1
KEYCODE_BUTTON_2
通用游戏手柄按钮 #2
KEYCODE_BUTTON_3
通用游戏手柄按钮 #3
KEYCODE_BUTTON_4
通用游戏手柄按钮 #4
KEYCODE_BUTTON_5
通用游戏手柄按钮 #5
KEYCODE_BUTTON_6
通用游戏手柄按钮 #6
KEYCODE_BUTTON_7
通用游戏手柄按钮 #7
KEYCODE_BUTTON_8
通用游戏手柄按钮 #8
KEYCODE_BUTTON_9
通用游戏手柄按钮 #9
KEYCODE_BUTTON_10
通用游戏手柄按钮 #10
KEYCODE_BUTTON_11
通用游戏手柄按钮 #11
KEYCODE_BUTTON_12
通用游戏手柄按钮 #12
KEYCODE_BUTTON_13
通用游戏手柄按钮 #13
KEYCODE_BUTTON_14
通用游戏手柄按钮 #14
KEYCODE_BUTTON_15
通用游戏手柄按钮 #15
KEYCODE_BUTTON_16
通用游戏手柄按钮 #16
KEYCODE_BUTTON_A
游戏手柄按钮 A
KEYCODE_BUTTON_B
游戏手柄按钮 B
KEYCODE_BUTTON_C
游戏手柄按钮 C
KEYCODE_BUTTON_X
游戏手柄按钮 X
KEYCODE_BUTTON_Y
游戏手柄按钮 Y
KEYCODE_BUTTON_Z
游戏手柄按钮 Z
KEYCODE_BUTTON_L1
游戏手柄按钮 L1
KEYCODE_BUTTON_L2
游戏手柄按钮 L2
KEYCODE_BUTTON_R1
游戏手柄按钮 R1
KEYCODE_BUTTON_R2
游戏手柄按钮 R2
KEYCODE_BUTTON_MODE
游戏手柄按钮 Mode
KEYCODE_BUTTON_SELECT
游戏手柄按钮 Select
KEYCODE_BUTTON_START
游戏手柄按钮 Start
KEYCODE_BUTTON_THUMBL
Left Thumb Button
KEYCODE_BUTTON_THUMBR
Right Thumb Button
KEYCODE_NUM
按键Number modifier
KEYCODE_INFO
KEYCODE__SWCH
按键App switch
KEYCODE_BOOKMARK
按键Bookmark
KEYCODE_AVR_INPUT
按键A/V Receiver input
KEYCODE_AVR_POWER
按键A/V Receiver power
KEYCODE_CAPTIONS
按键Toggle captions
KEYCODE_CHANNEL_DOWN
按键Channel down
KEYCODE_CHANNEL_UP
按键Channel up
KEYCODE_CLEAR
KEYCODE_DVR
KEYCODE_ENVELOPE
按键Envelope special function
KEYCODE_ELORER
按键Explorer special function
KEYCODE_FORWARD
按键Forward
KEYCODE_FORWARD_DEL
按键Forward Delete
KEYCODE_FUNCTION
按键Function modifier
KEYCODE_GDE
KEYCODE_HEADSETHOOK
按键Headset Hook
KEYCODE_META_LEFT
按键Left Meta modifier
KEYCODE_META_RIGHT
按键Right Meta modifier
KEYCODE_PICTSYMBOLS
按键Picture Symbols modifier
KEYCODE_PROG_BL
按键Blue “programmable”
KEYCODE_PROG_GREEN
按键Green “programmable”
KEYCODE_PROG_RED
按键Red “programmable”
KEYCODE_PROG_YELLOW
按键Yellow “programmable”
KEYCODE_SETTINGS
按键Settings
KEYCODE_SOFT_LEFT
按键Soft Left
KEYCODE_SOFT_RIGHT
按键Soft Right
KEYCODE_STB_INPUT
按键Set-top-box input
KEYCODE_STB_POWER
按键Set-top-box power
KEYCODE_SWITCH_CHARSET
按键Switch Charset modifier
KEYCODE_SYM
按键Symbol modifier
KEYCODE_SYSRQ
按键System Request / Print Screen
KEYCODE_TV
KEYCODE_TV_INPUT
按键TV input
KEYCODE_TV_POWER
按键TV power
KEYCODE_WINDOW
按键Window
KEYCODE_UNKNOWN
------------------------------------------------------------
public static final
int&KEYCODE_VOLUME_MUTE
Key code constant: Volume Mute
key. Mutes the speaker, unlike&.
This key should normally be implemented as a toggle such that the
first press mutes the speaker and the second press restores the
original volume.
Value:&164 (0x)
public static final
int&KEYCODE_MUTE
Key code constant: Mute key.
Mutes the microphone, unlike&.
Value:&91 (0x0000005b)
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。

我要回帖

更多关于 键盘功能键大全 的文章

 

随机推荐