发明内容
为此,本发明提供一种新的一种触摸事件处理方法、设备和终端,以力图解决或者至少缓解上面存在的问题。
根据本发明的一个方面,提供一种允许用户操作控制焦点沿路径行进的触摸事件处理设备,该路径包括多个路点,每个路点具有表明可行进方向的方向属性,设备驻留在移动终端中,该设备包括:触摸屏,适于接收用户的触摸输入;触摸屏控制器,适于将触摸输入解析成输入事件,输入事件包括向上、向下、向左、向右移动之一;输入事件控制单元,适于响应于输入事件,确定路径中位于控制焦点前方的第一路点的方向属性是否允许输入事件的执行;如果第一路点的方向属性允许输入事件执行,则执行输入事件。
可选地,在根据本发明的触摸事件处理设备中,输入事件控制单元还适于:如果第一路点的方向属性不允许输入事件的执行,则等待控制焦点经过第一路点后确定第一路点前方的第二路点的方向属性是否允许输入事件的执行。
可选地,在根据本发明的触摸事件处理设备中,输入事件控制单元还适于:如果第一路点允许输入事件的执行,则等待该控制焦点到达第一路点时执行输入事件。
可选地,在根据本发明的触摸事件处理设备中,输入事件控制单元还适于:确定控制焦点的当前位置与最近路点的距离是否在预定距离内;如果在预定距离内,则确定最近路点的方向属性是否允许输入事件的执行;如果最近路点的方向属性允许输入事件执行,则立即执行输入事件,使得控制焦点从当前位置按照输入事件指示的方向移动到目的路点。
可选地,在根据本发明的触摸事件处理设备中,最近路点为控制焦点前方的第一路点或者控制焦点后方的路点
可选地,在根据本发明的触摸事件处理设备中,方向属性包括向上、向下、向左和向右中的至少一个。
可选地,在根据本发明的触摸事件处理设备中,预定距离为控制焦点所在路段长度的1/4。
根据本发明的另一个方面,提供一种操作控制焦点沿路径行驶的触摸事件处理方法,该路径包括具有方向属性的多个路点,每个路点具有表明可行进方向的方向属性,触摸事件处理方法适于在移动终端中执行,触摸事件处理方法的步骤包括:接收到用户的触摸输入,并将触摸输入解析成输入事件,输入事件包括向上、向下、向左、向右移动之一;根据输入事件,判断路径中位于控制焦点前方的第一路点的方向属性是否允许输入事件的执行;如果第一路点的方向属性允许输入事件执行,则执行输入事件。
可选地,在根据本发明的触摸事件处理方法中,包括步骤:如果第一路点的方向属性不允许输入事件的执行,则等待控制焦点经过第一路点后确定第一路点前方的第二路点的方向属性是否允许输入事件的执行。
可选地,在根据本发明的触摸事件处理方法中,包括步骤:如果第一路点允许输入事件的执行,则等待该控制焦点到达第一路点时执行输入事件。
可选地,在根据本发明的触摸事件处理方法中,包括步骤:确定控制焦点的当前位置与最近路点的距离是否在预定距离内;如果在预定距离内,则确定最近路点的方向属性是否允许输入事件的执行;如果最近路点的方向属性允许输入事件执行,则立即执行输入事件,使得控制焦点从当前位置按照输入事件指示的方向移动到目的路点。
可选地,在根据本发明的触摸事件处理方法中,最近路点为控制焦点前方的第一路点或者控制焦点后方的路点。
可选地,在根据本发明的触摸事件处理方法中,方向属性包括向上、向下、向左和向右中的至少一个。
可选地,在根据本发明的触摸事件处理方法中,预定距离为控制焦点所在路段长度的1/4。
根据本发明的一个方面,提供一种移动终端,包括如上的触摸事件处理设备。
具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1是移动终端100的结构框图。具有多点触摸能力的移动终端100可以包括存储器接口102、一个或多个数据处理器、图像处理器和/或中央处理单元104,以及外围接口106。
存储器接口102、一个或多个处理器104和/或外围接口106既可以是分立元件,也可以集成在一个或多个集成电路中。在移动终端100中,各种元件可以通过一条或多条通信总线或信号线来耦合。传感器、设备和子系统可以耦合到外围接口106,以便帮助实现多种功能。例如,运动传感器110、光传感器112和距离传感器114可以耦合到外围接口106,以方便定向、照明和测距等功能。其他传感器116同样可以与外围接口106相连,例如定位系统(例如GPS接收机)、温度传感器、生物测定传感器或其他感测设备,由此可以帮助实施相关的功能。
相机子系统120和光学传感器122可以用于方便诸如记录照片和视频剪辑的相机功能的实现,其中相机子系统和光学传感器例如可以是电荷耦合器件(CCD)或互补金属氧化物半导体(CMOS)光学传感器。
可以通过一个或多个无线通信子系统124来帮助实现通信功能,其中无线通信子系统可以包括射频接收机和发射机和/或光(例如红外)接收机和发射机。无线通信子系统124的特定设计和实施方式可以取决于移动终端100所支持的一个或多个通信网络。例如,移动终端100可以包括被设计成支持GSM网络、GPRS网络、EDGE网络、Wi-Fi或WiMax网络以及BlueboothTM网络的通信子系统124。
音频子系统126可以与扬声器128以及麦克风130相耦合,以便帮助实施启用语音的功能,例如语音识别、语音复制、数字记录和电话功能。
I/O子系统140可以包括触摸屏控制器142和/或一个或多个其他输入控制器144。
触摸屏控制器142可以耦合到触摸屏146。举例来说,该触摸屏146和触摸屏控制器142可以使用多种触摸感测技术中的任何一种来检测与之进行的接触和移动或是暂停,其中感测技术包括但不局限于电容性、电阻性、红外和表面声波技术。
一个或多个其他输入控制器144可以耦合到其他输入/控制设备148,例如一个或多个按钮、摇杆开关、拇指旋轮、红外端口、USB端口、和/或指示笔之类的指点设备。一个或多个按钮(未显示)可以包括用于控制扬声器128和/或麦克风130音量的向上/向下按钮。
存储器接口102可以与存储器150相耦合。该存储器150可以包括高速随机存取存储器和/或非易失性存储器,例如一个或多个磁盘存储设备,一个或多个光学存储设备,和/或闪存存储器(例如NAND,NOR)。
存储器150可以存储操作系统152,例如Android、IOS或是Windows Phone之类的操作系统。该操作系统152可以包括用于处理基本系统服务以及执行依赖于硬件的任务的指令。存储器150还可以存储各种应用154。在移动设备运行时,会从存储器150中加载操作系统152,并且由处理器104执行。应用154在运行时,也会从存储器150中加载,并由处理器104执行。应用154运行在操作系统之上,利用操作系统以及底层硬件提供的接口实现各种用户期望的功能,如即时通信、网页浏览、图片管理等。应用可以是独立于操作系统提供的,也可以是操作系统自带的。
通常情况下,运行在移动终端的游戏中都包括有地图,地图中包含多个具有多个方向属性的路点。用户不可避免要进行大量触摸输入,然而在很多情况下,用户可能会误输入指令、或因手快或性急会过早输入指令、或者由于移动终端反应较慢或者游戏运行不流畅而错过输入时机。为此,本发明提出了通过结合路点的方向属性更智能判断用户意图,从而降低对输入精确度的要求。以下将更详细的通过图2-图4的示例描述处理触摸输入的过程。
图2示出了根据本发明的一个示例性实施例的触摸输入示意图。
假设用户想沿着AB-BD-DF的路线行进。该路径包括具有方向属性的多个路点A、B、D、F,每个路点具有表明可行进方向的方向属性。方向属性包括向上、向下、向左和向右中至少一个。例如,路点B的方向属性可以通过数组(1、1、0、1)表示,数组中的四个元素分别对应于向上、向下、向左、向右四个方向,值1表示某方向允许行进,而值0表示某方向不允许行进。在图2的示例中,在控制焦点(即控制的角色)到达路点B之前,即AB段提前做出向左行进的输入。在现有的游戏应用中,由于用户输入指令过早,游戏不大可能接收该指令,只能简单地将该指令丢弃,这样在路点D仍然向上直行进入DG线段。这与用户的预期不符,降低了用户体验。在本发明的实施例中,移动终端在接收到输入事件后,首先判断路点B的方向属性是否允许输入事件的执行。如果路点B的方向属性允许输入事件的执行,例如输入事件为向右移动,这意味着用户很可能意图在B点右拐。此时,可以等待控制焦点到达路点B执行输入事件。或者,如下面将要结合图3描述的实施例中,如果控制焦点与路点B的距离较近,可以立即执行输入事件。如果路点B的方向属性不允许输入事件的执行,例如输入事件为向左移动,那么可以等待经过路点B之后,确定路点前方的路点D的方向属性是否允许输入事件的执行。如果路点D的方向属性允许输入事件执行,意味着用户很可能希望在路点D向左移动,只不过提前进行了输入。此时可以在控制焦点到达路点D时执行输入事件,从而使控制焦点左转进入DF线段。这样,降低了对于用户的输入时机精确度的要求,提高了操作的识别成功率。
图3示出了根据本发明的另一个示例性实施例的触摸输入示意图。
对于手快或性急的用户而言,常常会进行提前输入,但在现有的应用中,这种提前输入需要等待控制焦点到达路点时才能被处理,因此从用户输入到视觉上看到输入被处理会存在一定延迟,用户可能会怀疑自己的输入是否被游戏忽略,降低了用户体验。在图3的示例中,移动终端收到向右移动的输入事件,此时控制焦点的当前位置B’在路点B之前。移动终端确定控制焦点的当前位置B’与路点B的距离是否在预定距离(例如线段AB长度的1/4)内。如果距离在预定距离内,确定路点B的方向属性是否允许输入事件的执行,即路点B是否允许向右移动。如果允许,这表明用户很可能想在路点B向右行进至路点C,但输入稍有提前。此时,移动终端立即执行输入事件,使控制焦点按照输入事件的指示从当前位置B’沿路径B’C(图中虚线所示)移动到路点C。通过该实施例,用户在接近路点时的输入会即刻被处理,用户迅速看到自己的输入生效,即控制焦点按照玩家所期望的方向行进,从而避免了用户的困惑,提升了用户体验。
图4示出了根据本发明的另一个示例性实施例的触摸输入示意图。
图4的示例与图3类似,主要区别是玩家输入滞后。如图4所示,移动终端收到向右移动的输入事件,此时路点B在控制焦点的当前位置B”后方。移动终端确定控制焦点的当前位置B”与路点B的距离是否在预定距离(例如线段AB长度的1/4)内。如果距离在预定距离内,确定路点B的方向属性是否允许输入事件的执行,即路点B是否允许向右移动。如果允许这表明玩家很可能想在路点B向右行进至路点C,但玩家的输入稍有滞后。此时,移动终端立即执行输入事件,控制焦点按照输入事件的指示从当前位置B”沿路径B”C(图中虚线所示)移动到路点C。由于移动终端反应较慢或者游戏运行不流畅而稍微错过输入时机时,游戏仍然能够正确判断玩家的意图。
在图3和图4的示例中,对于当前位置与最近路点的距离处于预定距离以内的情况,立即执行输入事件,用户可以得到及时视觉反馈。由于与最近路点的距离较短,新的路径B’C、B”C与原路径BC之间从视觉上不易分辨,玩家不会注意到控制焦点实际行进路线的偏差,而是认为自己的向右行进输入已经被游戏正确接受和处理,降低了对于玩家的输入精确度的要求,提高了玩家操作的识别成功率。应当注意,图3、图4的实施例也可以与图2的实施例相结合。
根据上述例如,图5示出了根据本发明一个示例性实施例的触摸事件处理方法500的流程图。如图5所示,本实施方法适于在移动终端中执行,以便处理来自用户的触摸输入事件,该触摸事件处理方法始于步骤S510。
在步骤S510中,接收用户的触摸输入,并将所述触摸输入解析成输入事件,所述输入事件包括向上、向下、向左、向右移动之一。
随后,在步骤S520中,根据输入事件判断路径中位于控制焦点前方的第一路点的方向属性是否允许输入事件的执行。如果允许输入事件执行,则执行步骤S530。否则执行步骤S540。
在步骤S530中,执行输入事件。可以等待控制焦点到达第一路点时执行输入事件。或者,如图3中描述的实施例那样,如果当前位置处于第一路点预定距离内则立即执行输入事件。
对于提前或者滞后输入的输入事件,移动终端可以确定控制焦点距离最近路点的距离是否在预定距离内。如果控制焦点在预定距离内,且最近路点的方向属性允许执行输入事件,则立即执行输入事件,使得控制焦点从当前位置按照输入事件指示的方向移动到目的路点。最近路点可以为控制焦点前方的第一路点或者控制焦点后方的路点。预定距离例如为控制焦点所在路段长度的1/4。
如果步骤S520确定不允许执行输入事件,移动终端可以等待控制焦点经过第一路点后,在步骤S540中确定位于第一路点前方的第二路点的方向属性是否允许输入事件的执行。如果允许输入事件执行,则对于第二路点执行步骤S530。如果输入事件无法执行,则该输入事件为错误输入引起,不做处理。
图6示出根据本发明示例性实施例的触摸事件处理设备600。
如图6所示,触摸事件处理设备600包括触摸屏146、触摸屏控制器142和输入事件控制单元610。触摸屏146、触摸屏控制器142与图1中移动终端100的部件相对应,输入事件控制单元610可以是应用154和/或操作系统152以及处理器104、存储器150实现的。
触摸屏146适于接收用户的触摸输入。触摸屏控制器142适于将所述触摸输入解析成输入事件,所述输入事件包括向上、向下、向左、向右移动之一。输入事件控制单元610适于响应于所述输入事件,确定所述路径中位于所述控制焦点前方的第一路点的方向属性是否允许输入事件的执行。如果第一路点的方向属性允许输入事件执行,则输入事件控制单元610执行所述输入事件。输入事件控制单元610可以等待该控制焦点到达第一路点时执行所述输入事件。如果第一路点的方向属性不允许输入事件的执行,则输入事件控制单元610可以等待控制焦点经过第一路点后确定所述第一路点前方的第二路点的方向属性是否允许所述输入事件的执行。输入事件控制单元610还可以确定所述控制焦点的当前位置与最近路点的距离是否在预定距离内。如果在预定距离内,则确定所述最近路点的方向属性是否允许输入事件的执行。如果所述最近路点的方向属性允许输入事件执行,则立即执行所述输入事件,使得控制焦点从当前位置按照输入事件指示的方向移动到目的路点。
应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员应当理解在本文所公开的示例中的设备的模块或单元或组件可以布置在如该实施例中所描述的设备中,或者可替换地可以定位在与该示例中的设备不同的一个或多个设备中。前述示例中的模块可以组合为一个模块或者此外可以分成多个子模块。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
此外,所述实施例中的一些在此被描述成可以由计算机系统的处理器或者由执行所述功能的其它装置实施的方法或方法元素的组合。因此,具有用于实施所述方法或方法元素的必要指令的处理器形成用于实施该方法或方法元素的装置。此外,装置实施例的在此所述的元素是如下装置的例子:该装置用于实施由为了实施该发明的目的的元素所执行的功能。
如在此所使用的那样,除非另行规定,使用序数词“第一”、“第二”、“第三”等等来描述普通对象仅仅表示涉及类似对象的不同实例,并且并不意图暗示这样被描述的对象必须具有事件上、空间上、排序方面或者以任意其它方式的给定顺序。
尽管根据有限数量的实施例描述了本发明,但是受益于上面的描述,本技术领域内的技术人员明白,在由此描述的本发明的范围内,可以设想其它实施例。此外,应当注意,本说明书中使用的语言主要是为了可读性和教导的目的而选择的,而不是为了解释或者限定本发明的主题而选择的。因此,在不偏离所附权利要求书的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。对于本发明的范围,对本发明所做的公开是说明性的,而非限制性的,本发明的范围由所附权利要求书限定。