CN114764270A - 输入转换方法、电子设备和可读介质 - Google Patents
输入转换方法、电子设备和可读介质 Download PDFInfo
- Publication number
- CN114764270A CN114764270A CN202210409578.7A CN202210409578A CN114764270A CN 114764270 A CN114764270 A CN 114764270A CN 202210409578 A CN202210409578 A CN 202210409578A CN 114764270 A CN114764270 A CN 114764270A
- Authority
- CN
- China
- Prior art keywords
- input
- key
- parameters
- parameter
- mouse
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000006243 chemical reaction Methods 0.000 title claims abstract description 64
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000006870 function Effects 0.000 claims abstract description 46
- 238000013507 mapping Methods 0.000 claims description 45
- 238000003825 pressing Methods 0.000 claims description 40
- 230000015654 memory Effects 0.000 claims description 26
- 238000005096 rolling process Methods 0.000 claims description 22
- 238000004898 kneading Methods 0.000 claims description 7
- 230000009977 dual effect Effects 0.000 claims 1
- 238000011161 development Methods 0.000 abstract description 10
- 230000006978 adaptation Effects 0.000 abstract description 8
- 238000010586 diagram Methods 0.000 description 28
- 238000012544 monitoring process Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 13
- 238000012545 processing Methods 0.000 description 13
- 238000007726 management method Methods 0.000 description 6
- 230000009471 action Effects 0.000 description 4
- 238000013523 data management Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 230000007704 transition Effects 0.000 description 3
- 230000001960 triggered effect Effects 0.000 description 3
- 230000003321 amplification Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000003199 nucleic acid amplification method Methods 0.000 description 2
- 230000002093 peripheral effect Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000002452 interceptive effect Effects 0.000 description 1
- 230000000644 propagated effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/02—Input arrangements using manually operated switches, e.g. using keyboards or dials
- G06F3/023—Arrangements for converting discrete items of information into a coded form, e.g. arrangements for interpreting keyboard generated codes as alphanumeric codes, operand codes or instruction codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/033—Pointing devices displaced or positioned by the user, e.g. mice, trackballs, pens or joysticks; Accessories therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/03—Arrangements for converting the position or the displacement of a member into a coded form
- G06F3/041—Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Position Input By Displaying (AREA)
- User Interface Of Digital Computer (AREA)
Abstract
本申请涉及终端技术领域,公开了一种输入转换方法、电子设备和可读介质。电子设备支持第一类输入设备,并且电子设备上安装有输入转换模块和第一应用,第一应用支持第二类输入设备的第二输入参数;并且方法包括:输入转换模块获取通过第一类输入设备输入的,针对第一应用的第一输入参数;输入转换模块基于预设转换规则,将第一输入参数转换为第二输入参数,其中在预设转换规则中,为不同的第二输入参数设置有对应的第一输入参数,并且不同的第二输入参数能够被第一应用用于实现不同的功能。如此,开发人员在开发用于电子设备的应用程序时,只需对第二类输入设备进行功能适配即可兼容第一类输入设备,减少了开发人员的工作量,降低了开发成本。
Description
技术领域
本申请涉及终端技术领域,特别涉及一种输入转换方法、电子设备和可读介质。
背景技术
随着电子设备相关技术的发展,进入人们工作、生活的电子设备的种类越来越多。同时,电子设备的输入方式的种类也越来越丰富,例如鼠标、键盘、触摸屏、表冠、按键、隔空手势、语音等。由于大部分应用程序都需要可以在多种设备上部署,并且部分电子设备还具有不同类型的输入设备。因此,为了确保应用程序能够对不同类型的输入设备的输入事件进行响应,在开发应用程序时需要对不同类型的输入设备分别进行适配。如此,开发人员每开发一个应用程序都需要根据应用程序的使用场景对不同类型的输入设备的输入事件进行适配,增加了开发人员的工作量,同时增加了开发成本。
发明内容
有鉴于此,本申请实施例提供一种输入转换方法、电子设备和可读介质,通过在操作***中将不同类型的输入设备的输入事件映射为同一类输入设备的输入事件,从而开发人员在开发应用程序是只需要对该同一类事件适配功能即可兼容不同类型的输入设备,减小了开发人员的工作量,降低了开发成本。
第一方面,本申请实施例提供一种输入转换方法,应用于电子设备,该电子设备支持第一类输入设备,并且电子设备上安装有输入转换模块和第一应用,第一应用支持第二类输入设备的第二输入参数;
方法包括:
输入转换模块获取通过第一类输入设备输入的,针对第一应用的第一输入参数;
输入转换模块基于预设转换规则,将第一输入参数转换为第二输入参数,其中在预设转换规则中,为不同的第二输入参数设置有对应的第一输入参数,并且不同的第二输入参数能够被第一应用用于实现不同的功能;
第一应用响应于第二输入参数实现相关功能。
在本申请实施例中,第一输入参数可以包括第一类输入设备的设备类型和对应的具体参数,输入转换模块可以设置于电子设备的操作***中,例如可以设置于电子设备的操作***的应用程序框架中,输入转换模块在接收到第一输入参数时,根据预设转换规则映射为第二类输入设备的第二输入参数,并向第一应用提供转换后的第二输入参数,例如向第一应用提供第二类输入设备的第二输入参数的监听接口,从而使得第一应用能够对第一类输入设备的输入事件进行响应,进而开发人员在开发第一应用时只需要针对第二类输入设备的第二输入参数适配相关功能即可兼容第一类输入设备,减小了开发人员的工作量,降低了开发成本。
在上述第一方面的第一种可能实现中,第二类输入设备为触摸屏,触摸屏对应具有如下的至少一种第二输入参数:
长按参数,长按参数包括长按位置;
缩放参数,缩放参数包括双指坐标、捏合方向、缩放比例;
滑动参数,滑动参数包括起点坐标、滑动速度、滑动距离。
本申请实施例中,将触摸屏的输入事件抽象长按手势、缩放手势和滑动手势,并且分以长按参数、缩放参数和滑动参数来定义长按手势、缩放手势和滑动手势。输入转换模块在检测到第一类输入设备的输入事件满足预设转换规则中映射为长按参数、缩放参数或滑动参数的条件时,将第一类输入设备的输入事件转换为触摸屏事件。
结合上述第一方面的第一种可能实现的第二种可能实现中,第一类输入设备为鼠标,并且鼠标对应的具有如下至少一种第一输入参数:
右键单击参数,右键单击参数包括光标位置;
滚轮滚动参数,滚轮滚动参数包括光标位置、滚轮系数、滚动方向;
左键长按参数,左键长按参数包括光标位置;
鼠标移动参数,鼠标移动参数包括光标位置、移动速度、移动距离。
本申请实施例中,将鼠标的输入事件抽象右键单击、滚轮滚动、左键长按、鼠标移动等,并分别以右键单击参数、滚轮滚动参数、左键长按参数和鼠标移动参数来定义右键单击、滚轮滚动、左键长按、鼠标移动。输入转换模块可以将定义鼠标的输入事件的参数映射为定义触摸屏事的输入事件的参数将鼠标的输入事件转换为触摸屏的输入事件。
结合上述第一方面的第二种可能实现的第三种可能实现中,预设转换规则包括下列规则中的至少一项:
在第一输入参数为右键单击参数时,将光标位置映射为长按位置;
在第一输入参数为滚轮滚动参数时,将光标位置映射为起点坐标,将滚轮系数和/或滚动方向映射为滑动速度;
在第一输入参数为左键长按参数和鼠标移动参数时,将光标位置映射为滑动起点,移动速度映射为滑动速度,移动距离映射为滑动距离。
在本申请实施例中,输入转换模块通过述预设规则转换后,当电子设备的输入事件为鼠标单击时,第一应用接收到的输入事件为触摸屏长按事件;当电子设备的输入事件为鼠标滚轮滚动时或左键按下并移动时,第一应用接收到的输入事件为触摸屏滑动事件。
结合上述第一方面的第一种可能实现的第四种可能实现中,第一类输入设备为键盘,并且键盘对应的第一输入参数包括按键参数,并且按键参数包括以下参数中的至少一种:
“CTRL”键和“+”键同时按下或“CTRL”键和“-”键同时按下;
“菜单”键按下;
“SHIFT”键和“F10”键同时按下。
结合上述第一方面的第四种可能实现的第五种可能实现中,预设转换规则包括下列规则中的至少一项:
在键盘的按键参数为“CTRL”键和“+”键同时按下或“CTRL”键和“-”键同时按下时,将“+”或“-”映射为捏合方向,将第一预设坐标映射为双指坐标,将第一预设比例映射为缩放比例;
在键盘的按键参数为“菜单”键按下或“SHIFT”键和“F10”键同时按下时,将第二预设坐标映射为长按位置。
在本申请实施例中,输入转换模块通过述预设规则转换后,当电子设备的输入事件为键盘时“CTRL”键和“+”键同时按下或“CTRL”键和“-”键同时按下时,第一应用接收到的输入事件为触摸屏缩放事件;当电子设备的输入事件为键盘“菜单”键按下或“SHIFT”键和“F10”键同时按下时,第一应用接收到的输入事件为触摸屏长按事件。
结合上述第一方面的第五种可能实现的第六种可能实现中,第一应用程序包括第一控件;并且
第一预设坐标为第一控件的对角线上1/4处和3/4的坐标。
结合上述第一方面的第六种可能实现的第七种可能实现中,第一预设比例在按键参数为“CTRL”键和“+”键同时按下时为1.05;第一预设比例在按键参数为“CTRL”键和“-”键同时按下时为0.95。
结合上述第一方面的第五种可能实现的第八种可能实现中,第一应用程序包括第二控件;并且
第二预设坐标为第二控件的中心的坐标。
结合上述第一方面的第一种可能实现的第九种可能实现中,第一类输入设备包括鼠标和键盘,并且鼠标和键盘对应的第一输入参数包括:
键盘参数和滚轮滚动参数;其中,
键盘参数为“CTRL”键按下,滚轮滚动参数,包括光标位置、滚轮系数、滚动方向。
结合上述第一方面的第九种可能实现的第十种可能实现中,其特征在于,预设转换规则包括:
在第一输入参数包括“CTRL”键按下和滚轮滚动参数时,将滚轮系数映射为缩放系数,将滚轮方向映射为捏合方向,并且将第三预设坐标映射双指坐标。
在本申请实施例中,输入转换模块通过述预设规则转换后,当电子设备的输入事件为键盘时“CTRL”键按下的同时鼠标滚轮滚动时,第一应用接收到的输入事件为触摸屏缩放事件。
结合上述第一方面的第十种可能实现的第十一种可能实现中,第一应用程序包括第三控件;并且
第三预设坐标为经过光标位置与第三控件的对角线平行的直线上与光标位置距离相等的两点的坐标。
结合上述第一方面的第一种可能实现的第十二种可能实现中,第一类输入设备为表冠,并且表冠对应的第一输入参数包括表冠旋转参数;其中,表冠旋转参数包括旋转角度。
结合上述第一方面的第十二种可能实现的第十三种可能实现中,预设转换规则包括:
在第一输入参数为表冠旋转参数的情况下,将旋转角度映射为滑动距离,并且将第四预设坐标映射起点坐标,将预设速度映射为滑动速度。
在本申请实施例中,输入转换模块通过上述预设规则转换后,当电子设备的输入事件为表冠旋转时,第一应用接收到的输入事件为触摸屏长按事件。
结合上述第一方面的第十三种可能实现的第十四种可能实现中,第一应用程序包括第四控件;并且
第四预设坐标为第四控件的中心坐标。
第二方面,本申请实施例提供一种可读介质,该可读介质中存储有指令,指令被电子设备时使电子设备实现上述第一方面及任意一种可能实现提供的输入转换方法。
第三方面,本申请实施例提供一种电子设备,该电子设备包括:
存储器,用于存储供电子设备的至少一个处理器执行的指令;以及
至少一个处理器,用于执行指令使电子设备实现上述第一方面及任意一种可能实现提供的输入转换方法。
附图说明
图1根据本申请的一些实施例,示出了一种输入事件处理过程的示意图;
图2根据本申请的一些实施例,示出了一种输入事件处理过程的示意图;
图3根据本申请的一些实施例,示出了一种电子设备20的硬件结构示意图;
图4根据本申请的一些实施例,示出了一种电子设备20的软件结构示意图;
图5根据本申请的一些实施例,示出了一种输入事件转换的交互流程的示意图;
图6A根据本申请的一些实施例,示出了一种操作笔记本电脑的显示菜单的示意图;
图6B根据本申请的一些实施例,示出了一种操作手机显示菜单示意图;
图7A根据本申请的一些实施例,示出了一种长按事件的处理过程示意图;
图7B根据本申请的一些实施例,示出了另一种长按事件的处理过程示意图;
图8A根据本申请的一些实施例,示出了一种在笔记本电脑进行缩放操作的示意图;
图8B根据本申请的一些实施例,示出了一种在手机进行缩放操作的示意图;
图9根据本申请的一些实施例,示出了一种缩放事件的处理过程示意图;
图10根据本申请的一些实施例,示出了一种缩放事件处理中坐标点模拟方法的示意图;
图11根据本申请的一些实施例,示出了另一种缩放事件处理中坐标点模拟方法的示意图;
图12根据本申请的一些实施例,示出了另一种缩放事件的处理过程示意图;
图13A根据本申请的一些实施例,示出了一种在智能手表调整进度条的示意图;
图13B根据本申请的一些实施例,示出了一种在手机调整进度条的示意图;
图13C根据本申请的一些实施例,示出了一种在笔记本电脑调整进度条的示意图;
图14A根据本申请的一些实施例,示出了一种滑动事件的处理过程示意图;
图14B根据本申请的一些实施例,示出了另一种滑动事件的处理过程示意图。
具体实施方式
本申请的说明性实施例包括但不限于输入转换方法、电子设备和可读介质。
下面结合附图详细说明本申请实施例的技术方案。
图1根据本申请的一些实施例,示出了一种输入事件处理过程的示意图。参考图1,电子设备的应用程序框架层可以通过硬件框架层获取不同类型输入设备的输入事件,并对不同类型的输入设备的输入事件进行分类,例如将智能手表10的表冠11、笔记本电脑20的鼠标21和键盘22的输入事件分类为按键类事件,将笔记本电脑20的触摸板23和手机30的触摸屏31的输入事件分类为移动类事件,并为安装在电子设备中的应用程序提供监听接口,以便于应用程序通过监听接口获取用户在输入设备的操作并与用户进行交互。开发人员在开发应用程序时,为使应用程序能够兼容不同类型的输入设备,即使应用程序能够对具有相同功能的不同类型的输入设备的输入事件都进行响应,需要对不同类型的输入设备进行分别适配。例如,参考图1,开发人员在开发应用程序时,为使得表冠11的两次按下事件、鼠标21的双击左键事件、键盘22的按下回车键事件、触摸板23的双击事件和触摸屏31的点击事件都对应打开控件A的功能,开发人员需要通过适配1至适配5将上述操作适配为打开控件A的功能,并且开发人员在开发不同的应用程序时,都需要对具有相同功能的不同类型的输入设备产生的输入事件进行分别适配,使得开发人员的开发成本较高。
为进一步降低开发人员的开发成本,本申请实施例提供了另一种输入事件转换方法。可以在电子设备的操作***中,例如在电子设备的操作***的应用程序框架中,将不同类型的输入设备的输入事件,映射为同一类型输入设备的输入事件,使得用户在开发不同的应用程序时,只需要对该同一类型输入设备的输入事件适配相应的功能,而无需对该同一类型输入设备以外的其他类型的输入设备的输入事件进行分别适配即可兼容不同类型的输入设备,降低了开发人员的开发成本。具体的,参考图2,智能手表10、笔记本电脑20、手机30的操作***可以包括硬件驱动框架和应用程序框架,其中硬件驱动框架使得前述电子设备的操作***可以访问硬件,例如获取表冠11、鼠标21、键盘22、触摸板23、触摸屏31等输入设备以获取输入设备的输入事件。前述电子设备的应用程序框架在检测到用户在输入设备的操作时,将触摸屏以外的输入设备的输入事件,例如触摸板事件、键盘事件、鼠标事件、表冠事件等,映射为触摸屏事件,并向应用程序提供监听接口,以使得用户在开发不同的应用程序时只需要对触摸屏事件适配相应的功能,例如,将触摸屏点击、触摸屏缩放、触摸屏滑动、触摸屏长按等触摸屏输入事件分别适配为打开控件、缩放控件、移动控件、弹出菜单等功能,而无需对其他类型的输入设备实现前述功能的输入事件进行适配,即可使得应用程序在安装在具有不同类型的输入设备的电子设备中对不同类型输入设备的输入事件进行正确地响应,既保证了应用程序的兼容性,又减少了开发人员的工作量,降低了开发人员的开发成本。
可以理解,将不同类型的输入设备的输入事件映射为触摸屏事件只是一种示例,在另一些实施例中,也可以映射为其他类型的事件,例如将不同类型设备的输入事件都映射为键盘的输入事件或鼠标的输入事件等,本申请不做限定。
可以理解,将触摸屏点击、触摸屏缩放、触摸屏滑动、触摸屏长按等触摸屏事件分别适配为打开控件、缩放控件、移动控件、弹出菜单等操作只是一种示例,在另一些实施例中,开发人员可以根据开发的应用程序的具体功能进行适配,本申请实施例不做限定。
为了便于理解本申请实施例的技术方案,下面以笔记本电脑20为例介绍申请各实施例提供的输入事件转换的适用的电子设备的硬件和软件结构。
图3根据本申请的一些实施例,示出了一种笔记本电脑20的结构示意图。如图2所示,笔记本电脑20可以包括一个或多个处理器201、存储器202、接口模块203、输入/输出(I/O)设备204以及用于耦接处理器201、存储器202、接口模块203、输入/输出(I/O)设备204的***控制逻辑205。其中:
处理器201可以包括一个或多个处理单元,例如可以包括中央处理器CPU(CentralProcessing Unit)、图像处理器GPU(Graphics Processing Unit)、数字信号处理器DSP(Digital Signal Processor)、微处理器MCU(Micro-programmed Control Unit)、AI(Artificial Intelligence,人工智能)处理器或可编程逻辑器件FPGA(FieldProgrammable Gate Array)等的处理模块或处理电路。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中在一些实施例中,处理器201可以执行用于获取用户在不同类型输入设备的操作,并将用户的操作映射为触摸屏事件。
存储器202可以包括非易失性存储器2021和易失性存储器2022。其中,非易失性存储器203可以包括用于永久性存储数据和/或指令的一个或多个有形的、非暂时性的计算机可读介质。非易失性存储器203可以包括闪存等任意合适的非易失性存储器和/或任意合适的非易失性存储设备,例如硬盘驱动器(Hard Disk Drive,HDD)、光盘(Compact Disc,CD)、数字通用光盘(Digital Versatile Disc,DVD)、固态硬盘(Solid-State Drive,SSD)等。非易失性存储器2021也可以是可移动存储介质,例如安全数字(Secure Digital,SD)存储卡等。易失性存储器2022可以包括随机存取存储器(Random-Access Memory,RAM),双倍数据率同步动态随机存取存储器(Double Data Rate Synchronous Dynamic Random AccessMemory,DDR SDRAM)等。存储器202可以用于永久性或临时性的存储数据和程序,例如,在一些实施例中,存储器202可以用于存储将不同类型的输入设备的输入事件映射为触摸屏事件的指令。
接口模块203可以包括通用串行总线(Universal Serial Bus,USB),用于提供笔记本电脑与其他硬件的连接支持。例如,在一些实施例中,输入设备可以通过接口模块203与笔记本电脑连接。
输入/输出(I/O)设备204可以包括输入设备2041,例如键盘、鼠标、触摸屏、触摸板、摇杆等,用于将用户的操作转换为模拟或数字信号并传递给处理器201,处理器201可以根据输入设备2041(未标示)的信号执行相应的指令,例如当按下键盘的回车键时,打开选中的控件;以及输出设备2042(未标示),例如扬声器、打印机、显示器等,用于将笔记本电脑20中的信息以声音、文字、图像等形式展示给用户,例如在一些实施例中,显示器可以用于显示应用程序的图形用户界面,便于用户与笔记本电脑20交互。
***控制逻辑205可以包括任意合适的接口控制器,以向笔记本电脑20的其他模块提供任意合适的接口,使得笔记本电脑20的各个模块可以相互通信。例如在一些实施例中,***控制逻辑205可以包括输入/输出控制器,以使得处理器201与输入/输出(I/O)设备204之间能进行通信。
在一些实施例中,处理器201中的至少一个可以与用于***控制逻辑205的一个或多个控制器的逻辑封装在一起,以形成***封装(System in Package,SiP)。在另一些实施例中,处理器201中的至少一个还可以与用于***控制逻辑205的一个或多个控制器的逻辑集成在同一芯片上,以形成片上***(System-on-Chip,SoC)。
可以理解,图3示出的笔记本电脑20的硬件结构只是一种示例,在另一些实施例中笔记本电脑20也可以包括更多或更少的模块,还可以组合或拆分部分模块,本申请实施例不做限定。
可以理解,以笔记本电脑20为例说明本申请实施例提供的输入事件转换所适用的电子设备只是一种示例,在另一些实施例中,也可以用于其他电子设备,包括但不限于:膝上型计算机、智能电视、智能音箱、平板计算机、服务器、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备等,本申请实施例不做限定。
可以理解,笔记本电脑20所使用的操作***可以是安卓TM、IOSTM(Input OutputSystem)、MicrosoftTM Windows以及鸿蒙TM(Harmony OS)等操作***中的一种,在此不做限制。下面以鸿蒙操作***为例,介绍笔记本电脑20的软件架构。
图4根据本申请的一些实施例,示出了一种笔记本电脑20的软件架构的示意图。如图4所示,笔记本电脑20的软件架构从上到下依次是应用层401、框架层402、***服务层403以及内核层404。其中:
应用层401:可以包括***应用4011和扩展应用4012(或第三方应用)。其中,***应用4011可以包括桌面、设置、相机、导航等;扩展应用4012可以包括智能家居控制应用、音乐播放器等软件应用程序。可以理解,开发人员开发的应用程序都处于应用层401。
框架层402为应用层提供多语言框架,包括界面(User Interface,UI)框架4021、用户程序框架4022和能力框架4023等。其中,UI框架4021包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等,在此不做赘述。用户程序框架4022可以为应用层401的应用程序提供访问笔记本电脑20的设备和数据的接口,例如可以为应用程序提供输入事件的监听接口,例如触摸屏事件监听接口、触摸屏手势监听接口等,应用程序可以根据从监听接口获取到的输入设备的输入事件,触发相应的功能。能力框架4023可以为应用程序提供应用所需的各能力部件的能力,例如运算能力(可以包括CPU算力、图形处理器(Graphics Processing Unit,GPU)算力、图像信号处理器(Image Signal Processor,ISP)算力等)、拾音能力(可以包括麦克风拾音能力、语音识别能力等)、设备安全防护方面的安全能力(可以包括可信任运行环境安全等级等)、显示能力(可以包括屏幕分辨率、屏幕尺寸等)、播放能力(包括扩音能力、立体声效能力等、以及存储能力(可以包括设备的内存能力、随机存取存储器(random access memory,RAM)能力等)等,在此不做限制。
***服务层403是笔记本电脑20软件***的核心,可以通过框架层402对应用层401的应用程序提供服务。***服务层403包括分布式软总线4031、分布式数据管理模块4032、多模输入子***4033等。其中:
分布式软总线4031用于将笔记本电脑20与其他电子设备进行耦接,构成分布式***。例如,在一些实施例中,分布式软总线4031可以将笔记本电脑20与其他电子设备的输入设备耦接,使得笔记本电脑20可以使用其他电子设备的输入设备。
分布式数据管理模块4032基于分布式软总线,实现应用程序数据和用户数据的分布式管理。例如,在一些实施例中,笔记本电脑20可以通过分布式数据管理模块获取其他电子设备的输入设备产生的输入事件。
多模输入子***4033为笔记本电脑20提供输入服务,例如,在一些实施例中,多模输入子***4033可以从获取用户在输入设备的操作并传递给应用程序框架4022。
内核层404包括内核子***4041和驱动子***4042。内核子***4041通过屏蔽多内核差异,对上层提供基础的内核能力,包括进程/线程管理、内存管理、文件***、网络管理和外设管理等。驱动子***4042包括硬件驱动框架,硬件驱动框架可以为手机10提供统一外设访问能力和管理框架。例如,在一些实施例中,硬件驱动框架可以提供访问输入设备的访问能力。
下面结合笔记本电脑20的硬件结构和软件架构,将不同类型的输入设备的输入事件映射为触摸屏事件为例,介绍本申请实施例的技术方案。
图5根据本申请的一些实施例,示出了一种输入事件转换的交互过程示意图,如图5所示,该方法包括如下步骤。
步骤501:输入设备2041向应用程序框架4022发送输入事件。
例如,在一些实施例中,输入设备2041可以通过驱动子***4042及多模输入子***4033向应用程序框架4022。
步骤502:应用程序框架4022判断输入设备2041发送的输入事件是否为触摸屏事件。若输入事件是触摸屏事件,则转至步骤504,直接将触摸屏事件发送给应用程序;否则转至步骤503。
步骤503:应用程序框架4022将输入事件映射为触摸屏事件。应用程序框架4022根据输入事件的具体功能,根据预设的转换规则,将输入事件映射为实现相同功能的触摸屏事件。
例如,在一些实施例中,在应用程序框架4022检测到输入事件为鼠标右键点击的事件时,对应的功能为弹出菜单,而触摸屏事件中,长按对应的功能同样为弹出菜单,此时应用程序框架4022将鼠标右键点击的事件映射为触摸屏事件中的长按事件。
在一些实施例中,可以将触摸事件进行抽象,例如抽象为长按手势、缩放手势、滑动手势等触摸屏手势,并通过相应的参数对触摸屏手势进行定义,应用程序框架4022在检测与触摸屏手势功能相同的其他类型的输入设备的输入事件时,将其他类型的输入设备的输入事件映射为定义的参数,并通过触摸屏手势监听接口提供给应用程序,具体的映射方法(转换规则)将在下文详细描述,在此不做赘述。
可以理解,在另一些实施例中,也可以将其他类型的输入设备的输入事件映射为触摸屏的具体操作,即在应用程序框架4022在检测与触摸屏手势功能相同的其他类型的输入设备的输入事件时,模拟触发该手势时触摸屏的触摸时间与触摸位置的对应关系。例如在一些实施例中,触摸屏长按手势和点击鼠标右键均可以打开应用程序的菜单,此时当用户点击鼠标右键时,应用程序框架4022可以模拟用户在触摸屏的操作,例如,生成触摸鼠标光标位置预设时长的触摸操作,具体的映射方法将在下文详细描述,在此不做赘述。
步骤504:应用程序框架4022将触摸屏事件发送给应用程序。
例如,在一些实施例中,应用程序框架4022可以向应用层401的应用程序提供触摸屏手势监听接口,故而应用层401的应用程序可以通过触摸屏手势监听接口获取触摸屏手势,并根据触摸屏手势执行相关的功能。
可以理解,应用程序在获取到具体的触摸屏操作和/或触摸屏手势时,即可实现该触摸屏操作和/或触摸屏手势对应的功能。
可以理解,在另一些实施例中,应用程序框架4022还可以向应用程序提供触摸屏操作监听接口,以向应用程序提供不同时间触摸屏被触摸的位置,以便开发人员在开发应用程序根据具体的触摸操作灵活地适配功能。
通过本申请实施例提供的输入事件转换将不同类型的输入事件映射为触摸屏事件后,开发人员在开发应用程序时只需针对触摸屏事件,例如触摸屏手势适配相应的功能即可兼容其他类型的输入设备,减少了开发人员对输入设备的输入事件适配的工作量,从而降低开发成本。
需要说明的是,通过应用程序框架4022来实现本申请各实施例提供的输入事件转换只是一种示例,在另一些实施例中,也可以通过软件架构中的其他模块,例如多模输入子***4033来实现,还可以以独立的应用程序或模块来实现本申请各实施例提供的输入事件转换,本申请实施例不做限定。
可以理解,将不同类型的输入设备的输入事件都映射为不同的触摸屏事件采用的映射方法也不同,下面将分别以触摸屏长按手势、触摸屏缩放手势、触摸屏滑动手势为例对本申请的技术方案进行详细介绍。
首先介绍将其他类型的输入设备的输入事件映射为触摸屏的长按手势和/或/长按手势对应的具体操作的技术方案。
在一些应用场景中,用户在与电子设备进行交互时需要弹出应用程序的菜单,以便进行下一步操作,例如,在一些实施例中,用户可以通过弹出音乐播放器的菜单以使用音乐播放器的快捷功能,例如“听歌识曲”、“搜索歌曲”、“最近播放”、“播放本地”等。图6A和图6B分别示出了笔记本电脑20和手机30的音乐播放器应用程序弹出菜单60的界面示意图,其中,笔记本电脑20弹出菜单60可以通过按下键盘22上的菜单键、同时按下键盘22的“SHIFT”键和“F10”键或在音乐播放器图标上单击鼠标21右键触发;手机30弹出菜单60可以通过在触摸屏31上长按音乐播放器图标触发。为了避免开发人员在开发音乐播放器时为触发弹出菜单功能的不同类型的输入设备进行分别适配,可以在应用程序框架4022中将键盘22按下SHIFT+F10事件、键盘22按下菜单键事件、鼠标21右键单击事件都映射为触摸屏31的长按手势和/或长按手势对应的具体操作。
具体的,图7A根据本申请的一些实施例,示出了一种将其他类型输入设备的输入事件映射为触摸屏长按手势的示意图。在一些实施例中,触摸屏长按手势即为用户连续按住触摸屏某一区域的时间超过预设长按时间时产生的触摸事件,例如用户连续按住某一区域超过1秒时产生的触摸事件。参考图7A,在一些实施例中,在应用程序框架4022检测用户不同触摸时间在触摸屏31的触摸位置时可以进行手势识别,并将识别到的长按手势以长按位置为参数提供给触摸屏手势监听接口,以使得开发人员可对长按手势进行功能适配。在输入设备为触摸屏以外的输入设备时,例如鼠标21或键盘22时,应用程序框架4022在检测鼠标21右键单击、键盘22的“SHIFT”键和“F10”键同时按下、键盘22的菜单键按下时,将鼠标21或键盘22的前述操作映射为长按位置,例如可以将笔记本电脑20当前的光标所在位置、笔记本电脑20中当前选中的控件的中心位置、笔记本电脑20中当前选中的控件的位置等映射为长按位置,并向触摸屏手势监听接口提供该长按手势的事件,如此开发人员无需关注其他类型输入设备的输入事件,只需要对长按手势进行适配即可在键盘22按下SHIFT+F10、键盘22按下菜单键、鼠标21右键单击时使得笔记本电脑20弹出菜单60。
在另一些实施例中,应用程序框架4022也可以将其他类型输入设备的输入事件映射为长按手势对应的具体操作。如前,在一些实施例中,长按手势为用户按住触摸屏持续时间超过预设长按时间产生的事件,故而可以在检测到鼠标21或键盘22对应长按手势的输入事件后,模拟触摸屏31的长按手势。参考图7B,应用程序框架4022在检测到键盘22按下SHIFT+F10事件、键盘22按下菜单键事件、鼠标21右键单击事件后,在预设长按时间内将笔记本电脑20当前的光标所在位置、笔记本电脑20中当前选中的控件的中心位置、笔记本电脑20中当前选中的控件的位置映射为触摸屏的触摸位置,即提供预设长按时间内触摸时间和触摸位置的对应关系,使得手势识别单元可以将触摸时间-触摸位置的对应关系识别为长按手势并提供给触摸屏手势监听接口。
在另一些实施例中,应用程序框架4022还可以不对其他类型输入设备的输入事件映射成的长按手势对应的具体操作进行手势识别,而是向应用程序提供模拟的长按手势对应的具体操作,以便于开发人员可以根据该具体的操作进行灵活的功能适配,例如根据长按时间长短不同弹出不同的菜单等,本申请实施例不做限定。
可以理解,在另一些实施例中,长按手势和/或长按手势的具体触摸操作也可以对应其他的功能,例如删除控件等,本申请实施例不做限定。
可以理解,以长按位置来定义长按手势只是一种示例,在另一些实施例中,也可以采用其他参数定义触摸屏长按手势,并将其他类型的输入设备和长按手势触发相同功能的输入事件映射为定义的参数,本申请实施例不做限定。
下面介绍将其他类型的输入设备的输入事件映射为触摸屏的缩放手势和/或缩放手势对应的具体操作的技术方案。
在一些应用场景中,用户需要对应用程序中的控件做缩放操作,例如在用户浏览图片时,需要放大或缩小图片以查看图片的细节或整体效果。图8A和图8B根据本申请的一些实施例,分别示出了笔记本电脑20和手机30在使用图片浏览应用程序查看图片的界面示意图。参考图8A,当用户要放大或缩小图片时,可以通过同时按下键盘22的“CTRL”键和“+”键或同时按下键盘22的“CTRL”键和“-”键,也可以在按住键盘22的“CTRL”键的同时,向前或向后滚动鼠标21的滚轮。参考图8B,用户在手机30上放大图片时,可以通过在触摸屏31上捏合操作触发图片的放大或缩小。为了避免开发人员在开发图片浏览应用程序时对触发缩放功能的不同类型的输入设备进行分别适配,可以在应用程序框架4022中将键盘22同时按下“CTRL”键和“+”键事件、键盘22同时“CTRL”键和“-”键事件、键盘22“CTRL”键按下的同时鼠标21滚轮滚动的事件映射为触摸屏31的缩放手势和/或缩放手势对应的具体操作。
具体地,图9根据本申请的一些实施例,示出了一种输入事件转换的示意图。在一些实施例中,在用户通过两个手指按住触摸屏31,并且两指向相反的方向移动时,该操作为捏合操作,并且该捏合操作在触摸屏31上产生的触摸屏输入事件为缩放手势。在一些实施例中,参考图9,应用程序框架4022可以在根据用户在触摸屏31上的触摸时间和触摸位置的关系识别到上述缩放手势时,向触摸屏手势监听接口提供以双指坐标、缩放方向和缩放比例为参数的缩放手势,以使得开发人员在开发应用程序时可以对缩放手势进行功能适配。在输入设备为触摸屏以外的设备时,应用框架层4022在检测到其他设备对应缩放手势的输入事件时,例如,应用程序框架4022在检测到键盘22同时按下“CTRL”键和“+”键、同时“CTRL”键和“-”键事件、按下键盘22“CTRL”键的同时滚动鼠标21的滚轮事件时,将预设坐标映射为双指坐标、将键盘22的“+”键/“-”键或鼠标21滚动方向映射为缩放方向,将预设比例或鼠标21的滚轮系数映射为缩放比例,并向触摸屏手势监听接口提供该缩放手势,如此开发人员只需对缩放手势适配相应的功能,例如缩放图片,即可使得用户同时按下键盘22“CTRL”键和“+”键、同时按下键盘22“CTRL”键和“-”键、按下键盘22“CTRL”键的同时滚动鼠标21的滚轮时,对图片进行缩放。
可以理解,在一些实施例中,滚轮系数是指鼠标滚轮一次时控件的滑动距离,例如每次滚动文字滑动3行等,应用程序可以获取滚轮系数并映射为对应用程序中控件的操作,例如滑动控件的滑动操作、对图片的缩放操作等。
在一些实施例中,参考图10,在应用程序框架4022检测到用户同时按下键盘22的“CTRL”键和“+”键或用户同时按下键盘22的“CTRL”键和“-”键时,可以以当前控件的对角线AB上的1/4位置和3/4位置为映射为双指坐标,例如P点和Q点。并且在检测到用户按下的是“CTRL”键和“+”键时,映射为放大,缩放比例为预设比例,例如1.05;在检测到用户按下的是“CTRL”键和“+”键时,映射为缩小,缩放比例为0.95。如此用户按下“CTRL”键和“+”键时,图片放大至按下前的1.05倍;用户按下“CTRL”键和“-”键时,图片缩小至按下前的0.95倍。如此,用户每次同时按下“CTRL”键和“+”键时,图片以图片中心为缩放中心放大至按下前的1.05倍;用户每次同时按下“CTRL”键“-”键时,图片以图片中心为缩放中心缩小至按下前的0.95倍。
在一些实施例中,参考图11,在应用程序框架4022检测到用户在按下键盘22的“CTRL”键的同时滚动鼠标21滚轮时,可以将当前控件上过光标位置O1与控件对角线AB平行的直线UV上与O1距离相等的M点和N点映射为双指坐标,并且O1U的长度小于O1V的长度,并且N为O1U的中点。并且在检测到鼠标21滚轮向前滚动时,映射为放大,缩放比例为1+常数×滚轮系数,例如1+0.05×滚轮系数;在检测到鼠标21滚轮向后滚动时,映射为缩小,缩放比例为1-常数×滚轮系数,例如1-0.05×滚轮系数。如此,用户按住“CTRL”键的并向前滚动一次滚轮时,图片以光标位置为缩放中心放大至滚动前的(1+0.05×滚轮系数)倍,例如当滚轮系数为1时,放大至滚动前的1.05倍;用户按住“CTRL”键的并向后滚动一次滚轮时,图片以光标位置为缩放中心缩小至滚动前的(1-0.05×滚轮系数)倍,例如当滚轮系数为1时,缩小为滚动前的0.95倍。
可以理解,在另一些实施例中,应用程序框架4022也可以将其他类型输入设备的输入事件映射为缩放手势的具体操作,例如应用程序框架4022在检测到键盘22同时按下“CTRL”键和“+”键事件、键盘22同时按下“CTRL”键和“-”键事件、键盘22按下“CTRL”键的同时鼠标21滚轮滚动时,模拟用户在触摸屏31的捏合操作,即生成预设时间内生成触摸屏触摸位置和触摸时间的对应关系,以便于手势识别模块识别到缩放手势并传递给触摸屏手势监听接口。
具体的,参考图10和图12,在应用程序框架4022检测到用户同时按下键盘22的“CTRL”键和“+”键或用户同时按下键盘22的“CTRL”键和“-”键时,以前述P点和Q点为双指的初始坐标,以当前控件对角线AB上,以控件中心O为中点,长度与PQ长度比例为缩放比例的两点为双指的终点坐标,生成预设时间内双指坐标的轨迹,也即是在预设时间内触摸时间和触摸位置的对应关系。例如,当检测到按下的是“CTRL”键和“+”键,以P点和Q点为双指初始坐标,P1点和Q1点为双指终点坐标,并且,P1Q1/PQ=1.05,此时模拟的触摸操作即为在预设时间内,例如0.5秒内,P点沿PP1移动,Q点沿QQ1移动。又例如当检测到按下的是“CTRL”键和“+”键,以P点和Q点为双指初始坐标,P2点和Q2点为双指终点坐标,并且,P2Q2/PQ=0.95,此时模拟的触摸操作即为在预设时间内,例如0.5秒内,P点沿PP2移动,Q点沿QQ2移动。
参考图11和图12,在应用程序框架4022检测到用户在按下键盘22的“CTRL”的同时滚动鼠标21的滚轮时,以前述M点和N点为双指起始坐标,以UV上,以光标位置O1为中点,长度与MN长度比例为缩放比例的两点为双指的终点坐标,生成预设时间内双指坐标的轨迹,也即是预设时间类触摸时间和触摸位置的对应关系。例如当检测到鼠标21的滚轮向前滚动时,以M点和N点为双指初始坐标,M1点和N1点为双指终点坐标,并且,M1N1/MN=1+0.05×滚轮系数,此时模拟的触摸操作即为在预设时间内,例如0.5秒内,M点沿MM1移动,N点沿NN1移动。又例如当检测到鼠标21的滚轮向后滚动时,以M点和N点为双指初始坐标,M2点和N2点为双指终点坐标,并且,M2N2/MN=1-0.05×滚轮系数,此时模拟的触摸操作即为在预设时间内,例如0.5秒内,M点沿MM2移动,N点沿NN2移动。
可以理解,在一些实施例中,用户每同时按一次键盘22的“CTRL”键和“+”键或键盘22的“CTRL”键和“-”键,应用程序框架4022即触发一次缩放手势。当用户同时按住键盘22的“CTRL”键和“+”键或用户同时按下键盘22的“CTRL”键和“-”键不松时,应用程序4022周期性地触发缩放手势,例如每隔1秒触发一次缩放手势。
可以理解,在一些实施例中,用户按住键盘22“CTRL”键的同时每滚动一次滚轮,应用程序框架4022即触发一次缩放手势。当用户按住键盘22“CTRL”键的同时连续滚动鼠标21的滚轮时,应用程序4022周期性地触发缩放手势,并且在检测到两次滚动间隔超过一定时间,例如超过500ms(毫秒)时,停止周期性触发缩放手势。
在另一些实施例中,应用程序框架4022还可以不对其他类型输入设备的输入事件映射成的缩放手势对应的具体操作进行手势识别,而是向应用程序提供模拟的触摸屏事件的具体操作,即不同时间触摸屏的触摸时间和触摸位置的对应关系,以便于开发人员可以根据该具体的操作进行灵活的功能适配,例如根据捏合操作的速度适配缩放速度等,本申请实施例不做限定。
可以理解,在另一些实施例中,缩放手势和/或缩放手势的具体触摸操作也可以对应其他的功能,本申请实施例不做限定。
可以理解,以双指坐标、缩放方向和缩放比例来定义缩放手势只是一种示例,在另一些实施例中,也可以采用其他参数定义触摸屏缩放手势,并将其他类型的输入设备和缩放手势触发相同功能的输入事件映射为定义的参数,本申请实施例不做限定。
下面介绍将其他类型的输入设备的输入事件映射为触摸屏的滑动手势和/或滑动手势对应的具体操作的技术方案。
在一些应用场景中,用户需要对应用程序中的控件做滑动操作,例如在用户在播放音乐时,可以滑动进度条以调整播放进度。图13A至图13C根据本申请的一些实施例,分别示出了智能手表10、笔记本电脑20和手机30在使用音乐播放器时的界面示意图。参考图13A,用户在使用智能手表10的音乐播放器时,要调整播放进度,可以通过旋转表冠11来实现;参考图13B,用户使用笔记本电脑20的音乐播放器时,可以通过按住鼠标21左键进拖动进度条130或滚动滚轮调整播放进度;参考图13C,用户在使用手机30的音乐播放器时,可以通过在触摸屏31对进度条130的滑动操作调整播放进度。为了避免开发人员在开发音乐播放器应用程序时对触发调整进度功能的不同类型的输入设备进行分别适配,可以在应用程序框架4022中将表冠11的旋转事件、鼠标21左键按下并移动事件、鼠标21滚轮滚动事件映射为触摸屏31的滑动手势和/或滑动手势对应的具体操作。
具体地,图14A根据本申请的一些实施例,示出了一种将其他类型输入设备的输入事件映射为触摸屏滑动手势的示意图。在一些实施例中,触摸屏滑动手势即为用户按住触摸屏31某一区域并移动触摸位置的操作。参考图14A,在一些实施例中,在应用程序框架4022检测用户不同触摸时间在触摸屏31的触摸位置时可以进行手势识别,并将识别到的滑动手势以起点坐标、滑动距离、滑动速度为参数提供给触摸屏手势监听接口,以使开发人员可对滑动手势进行功能适配。在输入设备为触摸屏以外的输入设备时,例如表冠11或鼠标21时,应用程序框架4022在表冠11旋转、鼠标21左键按下并移动时,即将表冠11或鼠标21的前述操作映射为起点坐标、滑动距离和滑动速度,例如可以将智能手表10当前控件的中心设置为预设坐标并映射为起点坐标,表冠11旋转的角度映射为滑动距离、以预设速度为滑动速度,还可以将笔记本电脑20当前的光标位置映射为起点坐标,将鼠标21的滚动系数或移动距离映射为滑动距离,将预设速度或鼠标21的移动速度映射为滑动速度,以并向触摸屏手势监听接口提供以前述起点坐标、滑动距离、滑动速度为参数的滑动手势,如此开发人员无需关注其他类型输入设备的输入事件,只需要对滑动手势进行适配即可在表冠11旋转、鼠标21滚轮滚动、鼠标21左键按下并移动时调整播放进度。
在另一些实施例中,参考图14B,应用程序框架4022也可以将其他类型输入设备的输入事件映射为滑动手势对应的具体操作。例如,在应用程序框架4022在检测到表冠11的旋转事件、鼠标21左键按下并移动事件、鼠标21滚轮滚动事件时,生成预设时间内,模拟用户在触摸屏31上的滑动操作,即用户在触摸屏31上滑动时,触摸屏触摸时间和触摸位置的对应关系。例如,应用程序框架4022在检测到表冠11的旋转操作时:以预设坐标为起点坐标,与过起点坐标且当前控件对角线平行的直线上长度为表冠11旋转角度的倍数为滑动距离的移动轨迹,生成预设时间内,例如1秒内,触摸屏触摸时间与触摸位置的对应关系。又例如,应用程序框架4022在检测到鼠标21滚轮滚动或鼠标21左键按下并移动时,生成预设时间内,例如1秒内,以光标位置为起点,鼠标21移动轨迹为滑动轨迹的触摸屏上触摸事件与触摸位置的对应关系。
在另一些实施例中,应用程序框架4022还可以不对其他类型输入设备的输入事件映射成的滑动手势对应的具体操作进行手势识别,而是向应用程序提供模拟的滑动事件的具体操作,即不同时间触摸屏的触摸时间和触摸位置的对应关系,以便于开发人员可以根据该具体的操作进行灵活的功能适配,例如根据滑动距离的长短适配滑动速度等,本申请实施例不做限定。
可以理解,在另一些实施例中,滑动手势和/或滑动手势的具体触摸操作也可以对应其他的功能,例如删除控件,本申请实施例不做限定。
可以理解,以起点坐标、滑动距离、滑动速度来定义滑动手势只是一种示例,在另一些实施例中,也可以采用其他参数定义触摸屏滑动手势,并将其他类型的输入设备和滑动手势触发相同功能的输入事件映射为定义的参数,本申请实施例不做限定。
需要说明的是,在一些实施例中触摸板的输入事件也可以包括长按手势、滑动手势、缩放手势,并根据前述各实施例中对触摸屏事件中长按手势、滑动手势、缩放手势对应的参数进行定义,也即是说应用程序框架4022在检测到触摸板的长按手势、滑动手势、缩放手势时,可以直接将触摸板的长按手势、滑动手势、缩放手势的参数作为触摸屏事件相对应的参数,而无需特别的计算。
需要说明的是,在一些实施例中,在电子设备的输入设备中包含有和鼠标、键盘、表冠有具有相同功能的其他按键、旋钮时,应用程序框架4022也可以将其他按键、旋钮根据前述各实施例的方案映射为触摸屏操作,本申请实施例不做限定。
本申请公开的机制的各实施例可以被实现在硬件、软件、固件或这些实现方法的组合中。本申请的实施例可实现为在可编程***上执行的计算机程序或程序代码,该可编程***包括至少一个处理器、存储***(包括易失性和非易失性存储器和/或存储元件)、至少一个输入设备以及至少一个输出设备。
可将程序代码应用于输入指令,以执行本申请描述的各功能并生成输出信息。可以按已知方式将输出信息应用于一个或多个输出设备。为了本申请的目的,处理***包括具有诸如例如数字信号处理器(DSP)、微控制器、专用集成电路(ASIC)或微处理器之类的处理器的任何***。
程序代码可以用高级程序化语言或面向对象的编程语言来实现,以便与处理***通信。在需要时,也可用汇编语言或机器语言来实现程序代码。事实上,本申请中描述的机制不限于任何特定编程语言的范围。在任一情形下,该语言可以是编译语言或解释语言。
在一些情况下,所公开的实施例可以以硬件、固件、软件或其任何组合来实现。所公开的实施例还可以被实现为由一个或多个暂时或非暂时性机器可读(例如,计算机可读)存储介质承载或存储在其上的指令,其可以由一个或多个处理器读取和执行。例如,指令可以通过网络或通过其他计算机可读介质分发。因此,机器可读介质可以包括用于以机器(例如,计算机)可读的形式存储或传输信息的任何机制,包括但不限于,软盘、光盘、光碟、只读存储器(CD-ROMs)、磁光盘、只读存储器(ROM)、随机存取存储器(RAM)、可擦除可编程只读存储器(EPROM)、电可擦除可编程只读存储器(EEPROM)、磁卡或光卡、闪存、或用于利用因特网以电、光、声或其他形式的传播信号来传输信息(例如,载波、红外信号数字信号等)的有形的机器可读存储器。因此,机器可读介质包括适合于以机器(例如,计算机)可读的形式存储或传输电子指令或信息的任何类型的机器可读介质。
在附图中,可以以特定布置和/或顺序示出一些结构或方法特征。然而,应该理解,可能不需要这样的特定布置和/或排序。而是,在一些实施例中,这些特征可以以不同于说明性附图中所示的方式和/或顺序来布置。另外,在特定图中包括结构或方法特征并不意味着暗示在所有实施例中都需要这样的特征,并且在一些实施例中,可以不包括这些特征或者可以与其他特征组合。
需要说明的是,本申请各设备实施例中提到的各单元/模块都是逻辑单元/模块,在物理上,一个逻辑单元/模块可以是一个物理单元/模块,也可以是一个物理单元/模块的一部分,还可以以多个物理单元/模块的组合实现,这些逻辑单元/模块本身的物理实现方式并不是最重要的,这些逻辑单元/模块所实现的功能的组合才是解决本申请所提出的技术问题的关键。此外,为了突出本申请的创新部分,本申请上述各设备实施例并没有将与解决本申请所提出的技术问题关系不太密切的单元/模块引入,这并不表明上述设备实施例并不存在其它的单元/模块。
需要说明的是,在本专利的示例和说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
虽然通过参照本申请的某些优选实施例,已经对本申请进行了图示和描述,但本领域的普通技术人员应该明白,可以在形式上和细节上对其作各种改变,而不偏离本申请的精神和范围。
Claims (16)
1.一种输入转换方法,应用于电子设备,其特征在于,所述电子设备支持第一类输入设备,并且所述电子设备上安装有输入转换模块和第一应用,所述第一应用支持第二类输入设备的第二输入参数;
所述方法包括:
所述输入转换模块获取通过所述第一类输入设备输入的,针对所述第一应用的第一输入参数;
所述输入转换模块基于预设转换规则,将所述第一输入参数转换为第二输入参数,其中在所述预设转换规则中,为不同的第二输入参数设置有对应的第一输入参数,并且不同的第二输入参数能够触发所述第一应用实现不同的功能;
所述第一应用响应于所述第二输入参数实现相应的功能。
2.根据权利要求1所述的输入转换方法,其特征在于,所述第二类输入设备为触摸屏,所述触摸屏对应具有如下的至少一种所述第二输入参数:
长按参数,所述长按参数包括长按位置;
缩放参数,所述缩放参数包括双指坐标、捏合方向、缩放比例;
滑动参数,所述滑动参数包括起点坐标、滑动速度、滑动距离;和/或,
所述第一类输入设备为鼠标,并且所述鼠标对应的具有如下至少一种所述第一输入参数:
右键单击参数,所述右键单击参数包括光标位置;
滚轮滚动参数,所述滚轮滚动参数包括光标位置、滚轮系数、滚动方向;
左键长按参数,所述左键长按参数包括光标位置;
鼠标移动参数,所述鼠标移动参数包括光标位置、移动速度、移动距离。
3.根据权利要求1或2所述的输入转换方法,其特征在于,所述预设转换规则包括下列规则中的至少一项:
在所述第一输入参数为所述右键单击参数时,将所述光标位置映射为所述长按位置;
在所述第一输入参数为所述滚轮滚动参数时,将所述光标位置映射为所述起点坐标,将所述滚轮系数和/或所述滚动方向映射为所述滑动速度;
在所述第一输入参数为所述左键长按参数和所述鼠标移动参数时,将所述光标位置映射为滑动起点,所述移动速度映射为滑动速度,所述移动距离映射为所述滑动距离。
4.根据权利要求1所述的输入转换方法,其特征在于,所述第一类输入设备为键盘,并且所述键盘对应的所述第一输入参数包括按键参数,并且所述按键参数包括以下参数中的至少一种:
“CTRL”键和“+”键同时按下或“CTRL”键和“-”键同时按下;
“菜单”键按下;
“SHIFT”键和“F10”键同时按下;和/或,
所述第二类输入设备为触摸屏,所述触摸屏对应具有如下的至少一种所述第二输入参数:
长按参数,所述长按参数包括长按位置;
缩放参数,所述缩放参数包括双指坐标、捏合方向、缩放比例;
滑动参数,所述滑动参数包括起点坐标、滑动速度、滑动距离;和/或,
所述第一类输入设备为鼠标,并且所述鼠标对应的具有如下至少一种所述第一输入参数:
右键单击参数,所述右键单击参数包括光标位置;
滚轮滚动参数,所述滚轮滚动参数包括光标位置、滚轮系数、滚动方向;
左键长按参数,所述左键长按参数包括光标位置;
鼠标移动参数,所述鼠标移动参数包括光标位置、移动速度、移动距离。
5.根据权利要求4所述的输入转换方法,其特征在于,所述预设转换规则包括下列规则中的至少一项:
在所述键盘的所述按键参数为“CTRL”键和“+”键同时按下或“CTRL”键和“-”键同时按下时,将所述“+”或“-”映射为所述捏合方向,将第一预设坐标映射为所述双指坐标,将第一预设比例映射为所述缩放比例;
在所述键盘的所述按键参数为“菜单”键按下或“SHIFT”键和“F10”键同时按下时,将第二预设坐标映射为所述长按位置。
6.根据权利要求5所述的输入转换方法,其特征在于,所述第一应用程序包括第一控件;并且
所述第一预设坐标为所述第一控件的对角线上1/4处和3/4的坐标。
7.根据权利要求6所述的输入转换方法,其特征在于,所述第一预设比例在所述按键参数为“CTRL”键和“+”键同时按下时为1.05;所述第一预设比例在所述按键参数为“CTRL”键和“-”键同时按下时为0.95。
8.根据权利要求5所述的输入转换方法,其特征在于,所述第一应用程序包括第二控件;并且
所述第二预设坐标为所述第二控件的中心的坐标。
9.根据权利要求1所述的输入转换方法,其特征在于,
所述第一类输入设备包括鼠标和键盘,并且所述鼠标和键盘对应的所述第一输入参数包括:
键盘参数和滚轮滚动参数;其中,
所述键盘参数为“CTRL”键按下,所述滚轮滚动参数,包括光标位置、滚轮系数、滚动方向;和/或,
所述第二类输入设备为触摸屏,所述触摸屏对应具有如下的至少一种所述第二输入参数:
长按参数,所述长按参数包括长按位置;
缩放参数,所述缩放参数包括双指坐标、捏合方向、缩放比例;
滑动参数,所述滑动参数包括起点坐标、滑动速度、滑动距离;和/或,
所述第一类输入设备为鼠标,并且所述鼠标对应的具有如下至少一种所述第一输入参数:
右键单击参数,所述右键单击参数包括光标位置;
滚轮滚动参数,所述滚轮滚动参数包括光标位置、滚轮系数、滚动方向;
左键长按参数,所述左键长按参数包括光标位置;
鼠标移动参数,所述鼠标移动参数包括光标位置、移动速度、移动距离。
10.根据权利要求9所述的输入转换方法,其特征在于,所述预设转换规则包括:
在所述第一输入参数包括所述“CTRL”键按下和所述滚轮滚动参数时,将所述滚轮系数映射为所述缩放系数,将所述滚轮方向映射为捏合方向,并且将第三预设坐标映射所述双指坐标。
11.根据权利要求10所述的输入转换方法,其特征在于,所述第一应用包括第三控件;并且
所述第三预设坐标为经过所述光标位置与所述第三控件的对角线平行的直线上与所述光标位置距离相等的两点的坐标。
12.根据权利要求1所述的输入转换方法,其特征在于,
所述第一类输入设备为表冠,并且所述表冠对应的所述第一输入参数包括表冠旋转参数;其中,所述表冠旋转参数包括旋转角度;和/或,
所述第二类输入设备为触摸屏,所述触摸屏对应具有如下的至少一种所述第二输入参数:
长按参数,所述长按参数包括长按位置;
缩放参数,所述缩放参数包括双指坐标、捏合方向、缩放比例;
滑动参数,所述滑动参数包括起点坐标、滑动速度、滑动距离;和/或,
所述第一类输入设备为鼠标,并且所述鼠标对应的具有如下至少一种所述第一输入参数:
右键单击参数,所述右键单击参数包括光标位置;
滚轮滚动参数,所述滚轮滚动参数包括光标位置、滚轮系数、滚动方向;
左键长按参数,所述左键长按参数包括光标位置;
鼠标移动参数,所述鼠标移动参数包括光标位置、移动速度、移动距离。
13.根据权利要求12所述的输入转换方法,其特征在于,所述预设转换规则包括:
在所述第一输入参数为所述表冠旋转参数的情况下,将所述旋转角度映射为所述滑动距离,并且将第四预设坐标映射所述起点坐标,将预设速度映射为所述滑动速度。
14.根据权利要求13所述的输入转换方法,其特征在于,所述第一应用包括第四控件;并且
所述第四预设坐标为所述第四控件的中心坐标。
15.一种可读介质,其特征在于,所述可读介质中存储有指令,所述指令被电子设备时使电子设备实现权利要求1至14任一项所述的输入转换方法。
16.一种电子设备,其特征在于,所述电子设备包括:
存储器,用于存储供所述电子设备的至少一个处理器执行的指令;以及
至少一个处理器,用于执行所述指令使所述电子设备实现权利要求1至14任一项所述的输入转换方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210409578.7A CN114764270B (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210409578.7A CN114764270B (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
CN202110864093.2A CN115686302A (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
Related Parent Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110864093.2A Division CN115686302A (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114764270A true CN114764270A (zh) | 2022-07-19 |
CN114764270B CN114764270B (zh) | 2023-03-24 |
Family
ID=82384835
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110864093.2A Pending CN115686302A (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
CN202210409578.7A Active CN114764270B (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110864093.2A Pending CN115686302A (zh) | 2021-07-29 | 2021-07-29 | 输入转换方法、电子设备和可读介质 |
Country Status (1)
Country | Link |
---|---|
CN (2) | CN115686302A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115268743A (zh) * | 2022-07-29 | 2022-11-01 | 深圳市商汤科技有限公司 | 图像处理方法、装置、电子设备、信息输入***和介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2007335142A1 (en) * | 2006-12-19 | 2008-06-26 | Bo Qiu | Human computer interaction device, electronic device and human computer interaction method |
CN107297073A (zh) * | 2017-06-15 | 2017-10-27 | 广州华多网络科技有限公司 | 外设输入信号的模拟方法、装置及电子设备 |
CN107357560A (zh) * | 2017-04-28 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 交互处理方法及装置 |
CN109885245A (zh) * | 2019-02-21 | 2019-06-14 | Oppo广东移动通信有限公司 | 应用控制方法、装置、终端设备及计算机可读取存储介质 |
CN110825242A (zh) * | 2019-10-18 | 2020-02-21 | 亮风台(上海)信息科技有限公司 | 一种用于输入的方法与设备 |
CN111840990A (zh) * | 2020-07-21 | 2020-10-30 | 联想(北京)有限公司 | 输入控制方法、装置及电子设备 |
-
2021
- 2021-07-29 CN CN202110864093.2A patent/CN115686302A/zh active Pending
- 2021-07-29 CN CN202210409578.7A patent/CN114764270B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
AU2007335142A1 (en) * | 2006-12-19 | 2008-06-26 | Bo Qiu | Human computer interaction device, electronic device and human computer interaction method |
CN107357560A (zh) * | 2017-04-28 | 2017-11-17 | 阿里巴巴集团控股有限公司 | 交互处理方法及装置 |
CN107297073A (zh) * | 2017-06-15 | 2017-10-27 | 广州华多网络科技有限公司 | 外设输入信号的模拟方法、装置及电子设备 |
CN109885245A (zh) * | 2019-02-21 | 2019-06-14 | Oppo广东移动通信有限公司 | 应用控制方法、装置、终端设备及计算机可读取存储介质 |
CN110825242A (zh) * | 2019-10-18 | 2020-02-21 | 亮风台(上海)信息科技有限公司 | 一种用于输入的方法与设备 |
CN111840990A (zh) * | 2020-07-21 | 2020-10-30 | 联想(北京)有限公司 | 输入控制方法、装置及电子设备 |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115268743A (zh) * | 2022-07-29 | 2022-11-01 | 深圳市商汤科技有限公司 | 图像处理方法、装置、电子设备、信息输入***和介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114764270B (zh) | 2023-03-24 |
CN115686302A (zh) | 2023-02-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11256396B2 (en) | Pinch gesture to navigate application layers | |
JP6663453B2 (ja) | 側面に搭載されたタッチパッドを用いたナビゲーション・アプリケーション | |
US11402978B2 (en) | Devices, methods, and systems for manipulating user interfaces | |
US9996233B2 (en) | Device, method, and graphical user interface for navigating user interface hierarchies | |
US8839122B2 (en) | Device, method, and graphical user interface for navigation of multiple applications | |
KR102044826B1 (ko) | 마우스 기능 제공 방법 및 이를 구현하는 단말 | |
US20110175826A1 (en) | Automatically Displaying and Hiding an On-screen Keyboard | |
WO2019128193A1 (zh) | 移动终端及浮屏操作控制方法、装置 | |
EP2715505A1 (en) | Edge gesture | |
EP2715491A1 (en) | Edge gesture | |
JP2011150413A (ja) | 情報処理装置、操作入力方法及び操作入力プログラム | |
WO2012166175A1 (en) | Edge gesture | |
WO2017101445A1 (zh) | 一种响应操作轨迹的方法以及操作轨迹响应装置 | |
JP2011053770A (ja) | 情報処理装置及び入力処理方法 | |
US9658865B2 (en) | Method of editing content and electronic device for implementing the same | |
US20130127745A1 (en) | Method for Multiple Touch Control Virtual Objects and System thereof | |
CN114764270B (zh) | 输入转换方法、电子设备和可读介质 | |
WO2008082095A1 (en) | Touch-screen device, and control method for the same | |
KR101381878B1 (ko) | 마우스를 이용하여 터치 입력을 구현하기 위한 방법, 장치, 및 컴퓨터 판독 가능한 기록 매체 | |
US20140085340A1 (en) | Method and electronic device for manipulating scale or rotation of graphic on display | |
CN111078112A (zh) | 终端设备控制方法、装置、计算机设备及存储介质 | |
US20190034069A1 (en) | Programmable Multi-touch On-screen Keyboard | |
TW201319912A (zh) | 觸控簡報系統及其執行方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |