CN106462351B - 触摸事件处理方法、装置及终端设备 - Google Patents

触摸事件处理方法、装置及终端设备 Download PDF

Info

Publication number
CN106462351B
CN106462351B CN201580021516.7A CN201580021516A CN106462351B CN 106462351 B CN106462351 B CN 106462351B CN 201580021516 A CN201580021516 A CN 201580021516A CN 106462351 B CN106462351 B CN 106462351B
Authority
CN
China
Prior art keywords
touch
touch point
application program
response region
front stage
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.)
Active
Application number
CN201580021516.7A
Other languages
English (en)
Other versions
CN106462351A (zh
Inventor
王再尚
赵俊民
张鑫
张国全
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201911033084.8A priority Critical patent/CN110825304B/zh
Publication of CN106462351A publication Critical patent/CN106462351A/zh
Application granted granted Critical
Publication of CN106462351B publication Critical patent/CN106462351B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/03Arrangements for converting the position or the displacement of a member into a coded form
    • G06F3/041Digitisers, e.g. for touch screens or touch pads, characterised by the transducing means
    • G06F3/0416Control or interface arrangements specially adapted for digitisers
    • G06F3/0418Control or interface arrangements specially adapted for digitisers for error correction or compensation, e.g. based on parallax, calibration or alignment
    • G06F3/04186Touch location disambiguation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input 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/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0487Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
    • G06F3/0488Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
    • G06F3/04886Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures by partitioning the display area of the touch-screen or the surface of the digitising tablet into independently controllable areas, e.g. virtual keyboards or menus
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M1/00Substation equipment, e.g. for use by subscribers
    • H04M1/72Mobile telephones; Cordless telephones, i.e. devices for establishing wireless links to base stations without route selection
    • H04M1/724User interfaces specially adapted for cordless or mobile telephones
    • H04M1/72469User interfaces specially adapted for cordless or mobile telephones for operating the device by selecting functions from two or more displayed items, e.g. menus or icons
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/041Indexing scheme relating to G06F3/041 - G06F3/045
    • G06F2203/04104Multi-touch detection in digitiser, i.e. details about the simultaneous detection of a plurality of touching locations, e.g. multiple fingers or pen and finger
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2203/00Indexing scheme relating to G06F3/00 - G06F3/048
    • G06F2203/048Indexing scheme relating to G06F3/048
    • G06F2203/04808Several contacts: gestures triggering a specific function, e.g. scrolling, zooming, right-click, when the user establishes several contacts with the surface simultaneously; e.g. using several fingers or a combination of fingers and pen
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04MTELEPHONIC COMMUNICATION
    • H04M2250/00Details of telephonic subscriber devices
    • H04M2250/22Details of telephonic subscriber devices including a touch pad, a touch sensor or a touch detector

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)
  • Position Input By Displaying (AREA)

Abstract

一种触摸事件处理方法、装置及终端设备,如果存在没有被处理即将被丢弃的多点触摸事件,而且前台运行的应用程序是重点应用程序,则从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的目标控件响应区域内的触摸点。然后,根据落在所述目标控件响应区域内的触摸点组合得到新的触摸事件,并将新的触摸事件重新传递给所述前台运行的应用程序,使所述前台运行的应用程序响应该新的触摸事件。最终解决在某些场景下触摸屏不响应用户的触摸操作的问题。

Description

触摸事件处理方法、装置及终端设备
技术领域
本发明涉及触摸事件处理技术领域,尤其涉及触摸事件处理方法、装置及终端设备。
背景技术
用户触摸终端的触摸屏所产生的事件称为触摸事件,也称触控事件。在正常情况下,Android系统中的事件处理器将接收到的触摸事件直接发送给当前的界面,即前台运行的应用程序的用户界面,应用程序利用相应的处理方法处理该触摸事件。前台运行的应用程序是指,该应用程序的显示界面在显示屏上可见,且能与用户直接进行交互的应用程序。
Android系统中应用程序的显示界面包括底层页面,以及设置在所述底层界面上的控件响应区域,其中,控件可以是按钮、文本域。如果触摸事件发生的位置位于控件响应区域,事件处理器将该触摸事件上报给该控件响应区域对应的应用程序;如果触摸事件发生的位置位于控件响应区域之外,则该触摸事件被发送给底层页面,而底层页面通常不响应触摸事件,底层页面是事件处理的末端,因此,底层页面不响应的触摸事件将会消失。如果多点触摸事件的一部分触点位于应用程序的控件响应区域之外,认为该多点触摸事件针对底层页面发起,将该多点触摸事件上报给底层页面。例如,如果触摸屏上有水滴,可能出现来电话后用户点击接听电话的按钮不响应的现象,Android系统将水滴和用户的点击看作一个多点触摸事件,因此,将该多点触摸事件上报给底层页面,而底层页面不会响应该触摸事件,导致该触摸事件消失,即用户的触摸操作未得到响应。
在某些场景下,触摸屏处于开启状态下,触摸屏即使没有被触摸,也会自动在乱点,仿佛有一只看不见的鬼手在触摸所述触摸屏,俗称鬼手。由上述的触摸事件处理流程可知,当屏幕出现鬼手,或者,由于用户手持姿势、外界环境(如屏幕上有水滴)等影响因素引起触摸事件上报不对,将进一步导致用户触摸指定位置不响应。
发明内容
本发明实施例中提供了一种触摸事件处理方法、装置及终端设备,以解决现有技术中的用户触摸操作得不到应用程序响应的问题。
为了解决上述技术问题,本发明实施例公开了如下技术方案:
第一方面,提供一种触摸事件处理方法,包括:
当存在未处理、即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序;
如果所述前台运行的应用程序是重点应用程序,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点;
根据落在所述目标控件响应区域内的触摸点,组合得到新的触摸事件;
将组合得到的新的触摸事件传递给所述前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
结合第一方面,在第一方面的第一种可能的实现方式中,所述根据落在所述目标控件响应区域内的触摸点,组合得到新的触摸事件,包括:
根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
将所述目标控件响应区域内的有效触摸点,组合得到所述新的触摸事件。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
结合第一方面的第二种可能的实现方式,在第一方面的第三种可能的实现方式中,所述根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点,包括:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
结合第一方面和第一方面的第一至第三种可能的实现方式中的任意一种,在第一方面的第四种可能的实现方式中,所述从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点,包括:
获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域对应的位置坐标范围内;
如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
结合第一方面的第四种可能的实现方式,在第一方面的第五种可能的实现方式中,所述获取前台运行应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据,包括:
当所述前台运行的应用程序启动时,获取所述前台运行的应用程序的各个显示界面的控件响应区域的位置坐标数据,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。
第二方面,提供一种触摸事件处理装置,包括:
第一判断单元,用于当存在未处理、即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序;
确定单元,用于当所述前台运行的应用程序是重点应用程序时,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点;
组合单元,用于根据落在所述前台运行的应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件;
传递单元,用于将组合得到的新的触摸事件传递给所述前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
结合第二方面,在第二方面的第一种可能的实现方式中,所述组合单元包括:
过滤子单元,用于根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
组合子单元,用于将落在所述目标控件响应区域内的有效触摸点,组合得到新的触摸事件。
结合第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述过滤子单元具体用于:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则所述触摸点是有效触摸;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
结合第二方面和第二方面的第一至第三种可能的实现方式中的任意一种,在第二方面的第四种可能的实现方式中,所述确定单元,包括:
获取子单元,用于获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
判断子单元,用于逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域对应的位置坐标范围内;
确定子单元,用于如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
结合第二方面的第四种可能的实现方式,在第二方面的第五种可能的实现方式中,所述获取子单元具体用于:
当所述前台运行的应用程序启动时,获取所述前台运行的应用程序的各个显示界面的控件响应区域,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。
第三方面,提供一种具有触摸屏的终端设备,包括处理器和存储器,
通过调用所述存储器内存储的程序或指令,所述处理器用于:
当存在未处理、即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序;
如果所述前台运行的应用程序是重点应用程序,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点;
根据落在所述前台运行的应用程序的控件响应区域内的触摸点,组合得到新的触摸事件;
将组合得到的新的触摸事件传递给所述前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
结合第三方面,在第三方面的第一种可能的实现方式中,所述处理器用于根据所述前台运行的应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件时,具体用于:
根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
将所述目标控件响应区域内的有效触摸点,组合得到所述新的触摸事件。
结合第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
结合第三方面的第二种可能的实现方式,在第三方面的第三种可能的实现方式中,所述处理器用于根据所述触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点时,具体用于:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
结合第三方面和第三方面的第一种至第三种可能的实现方式中的任意一种,在第三方面的第四种可能的实现方式中,所述处理器用于从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点时,具体用于:
获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域对应的位置坐标范围内;
如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
结合第三方面的第四种可能的实现方式,在第三方面的第五种可能的实现方式中,所述处理器用于获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据时,具体用于:
当所述前台运行的应用程序启动时,获取所述前台运行的应用程序的各个显示界面的控件响应区域的位置坐标数据,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。由以上技术方案可见,本发明实施例提供的触摸事件处理方法,当存在即将被丢弃的多点触摸事件,而且前台运行的应用程序是重点应用程序时,从所述多点触摸事件的各个触摸点中,确定出落在控件响应区域内的触摸点。然后,根据落在前台运行的应用程序的控件响应区域内的触摸点组合得到新的触摸事件,并将新的触摸事件传递给所述前台运行的应用程序,从而使所述前台运行的应用程序响应该新的触摸事件。该方法将按照触摸事件处理机制处理到末端即将被丢弃的多点触摸事件中的各个触摸点逐一分析,根据前台运行的应用程序的控件响应区域对所述多点触摸事件进行分离重组,即将用户触摸应用程序的控件响应区域所产生的触摸事件分离出来,得到新的触摸事件,重新传递给前台运行的应用程序,从而使前台运行的应用程序响应用户的触摸事件,最终解决在某些场景下触摸屏不响应用户的触摸操作的问题,提高应用程序对触摸事件的响应准确率。
附图说明
构成本申请的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1示出了本发明实施例提供的一种触摸事件处理方法的流程示意图;
图2示出了本发明实施例提供的一种S130的方法流程示意图;
图3示出了本发明实施例提供的一种S120的方法流程示意图;
图4示出了本发明实施例提供的一种触摸事件处理装置的框图;
图5示出了本发明实施例提供的一种组合单元的框图;
图6示出了本发明实施例提供的一种确定单元的框图;
图7示出了本发明实施例提供的一种终端设备的结构框图。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
具体实施方式
为方便理解本发明的技术方案,首先介绍下事件处理器响应触摸事件的原理:
在Android系统中,View(视窗)类是用户界面的基本构建模块,是构建用户界面控件(例如,触摸按钮、文本域)的基本类,一个View占用屏幕上的一个区域并且负责用户界面绘制和事件处理。
触摸事件通常直接上传给触摸屏当前显示的用户界面,用户界面中会有相应的处理方法,一个用户界面可能包括父View、子View、控件三类,此种应用场景下,当触摸事件(Touch事件)发生时,事件处理器首先将该Touch事件传递给最顶层的View(View节点树的叶子节点,即控件),如果控件未处理该Touch事件,则继续将该Touch事件传递给子View(叶子节点的上一级节点),如果子View仍未处理该Touch事件,则继续将该Touch事件传给父View(子View的上一级节点),如果最底层的View(View节点树的根节点,即View root节点)仍没有处理该Touch事件,则该Touch事件将会“消失”,即该Touch事件被丢弃。上述过程中,如果Touch事件被上述的任意一个节点处理掉,则不会再向下一层View传递该Touch事件。
为实现本发明的发明目的,本发明提供了触摸事件处理方法、装置及终端设备,该方法将未处理、即将被丢弃的多点触摸事件中的各个触摸点逐一分析,根据重点应用程序的控件响应区域对未处理、即将被丢弃的多点触摸事件进行分离重组,即将用户触摸应用程序的控件响应区域所产生的触摸事件分离出来,重新组合成新的触摸事件,并传递给所述应用程序,从而使应用程序响应用户的触摸事件。以上是本发明的核心思想,为了使本领域技术人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所述描述的实施例仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参见图1,示出了本发明实施例一种触摸事件处理方法的流程示意图,该方法应用于具有触摸屏的终端设备中,具体可以应用于终端设备中的事件处理器中,如图1所示,所述方法可以包括以下步骤:
S110,如果存在未处理、即将被丢弃的多点触摸事件,则判断前台运行的应用程序是否是重点应用程序。如果是,则执行S120;否则,结束当前流程。
按照上述的触摸事件上传机制,如果传递给父View的多点触摸事件没有被处理,此时,确定存在即将被丢弃的多点触摸事件,然后,该多点触摸事件被拦截下来,并判断运行在前台的应用程序是否是重点应用程序,如果是重点应用程序则继续执行S120。
重点应用程序可以是系统设定的应用程序,例如,电话、短信等应用程序,也可以由用户预先设定某些应用程序为重点应用程序。系统通过应用程序的包名判断前台运行的应用程序是否是重点应用程序,应用程序的包名是应用程序的唯一识别标识。如果前台运行的应用程序的包名包含在重点应用程序的包名中,则确定前台运行的应用程序是重点应用程序。S120,从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的目标控件响应区域内的触摸点。
首先,获取前台运行的应用程序的当前显示界面上的全部能够响应触摸事件的控件,将当前显示界面上的全部控件作为一个集合;然后,从控件集合中确定出目标控件,并确定该目标控件对应的目标控件响应区域。
目标控件响应区域可以是系统根据重点应用程序的显示界面所包含的控件区域确定,例如,电话应用程序,如果当前显示界面是拨打电话的页面,则将接听电话的控件对应的控件响应区域确定为目标控件响应区域;如果当前显示界面是接听电话的页面,则将挂断电话的控件所对应的控件响应区域确定为目标控件响应区域。
逐一分析多点触摸事件中的各个触摸点是否落入目标控件响应区域内。
S130,根据落在所述应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件。
将落在目标控件响应区域内的触摸点组合得到一个新的触摸事件。例如,当前显示界面包括三个控件响应区域,分别是区域I和区域II,区域I是目标控件响应区域。如果分离出的落在控件响应区域内的触摸点包括A、B两个点,其中,点A落在区域I中,则将点A作为新的触摸事件。
S140,将组合得到的新的触摸事件传递给前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
将组合得到的新的触摸事件再次传递给前台运行的应用程序,由该应用程序响应所述新的触摸事件,因此,能够避免某种场景下用户点击前台运行的应用程序的控件响应区域得不到响应的现象。
本实施例提供的触摸事件处理方法,如果仍存在未被处理、即将被丢弃的多点触摸事件时,而且,前台运行的应用程序是重点的应用程序时,从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的控件响应区域内的触摸点。然后,根据落在前台运行的应用程序的目标控件响应区域内的触摸点组合得到新的触摸事件,并将新的触摸事件重新传递给所述运行在前台的应用程序,从而使运行在前台的应用程序响应该新的触摸事件,即应用程序响应用户的触摸事件,最终避免在某些场景下用户的触摸操作得不到响应的现象。
在某些场景下,鬼手可能恰好出现在前台运行的控件响应区域内,因此,需要过滤掉这些干扰触摸点,最终剩下的触摸点才是需要应用程序响应的触摸点。
请参见图2,示出了本发明实施例一种S130的方法流程示意图,如图2所示,S130可以包括以下步骤:
S131,根据触摸性能参数,对所述目标控件响应区域内的触摸点进行过滤,得到有效触摸点。
在本发明的实施例中,所述触摸性能参数可以包括:点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
在一种应用场景下,触摸点的触摸位置坐标落在前台运行的应用程序的目标控件响应区域内,但是触摸点具有一定的移动距离,触摸点的起始位置与终止位置之间的距离大于所述控件响应区域的长度,此时,确定所述触摸点是无效触摸点,丢弃该触摸点。如果触摸点的触摸位置落在目标控件响应区域内,且触摸点的起始位置与终止位置之间的距离小于所述控件响应区域的长度,则确定所述触摸点是有效触摸点。
在另一种场景下,鬼手出现在目标控件响应区域内,而且在预设时长内目标控件响应区域被点击次数高达成百上千次,此种场景下,可以通过统计某个触摸点在一定时间内被点击的次数过滤掉鬼手干扰点。当所述触摸点在第一预设时长内被点击的次数超过预设次数时,认为所述触摸点是无效触摸点,丢弃该触摸点。如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则所述触摸点是有效触摸点;
在又一种场景下,鬼手触摸时间较长且移动距离较小。此种场景下,检测触摸点的触摸时长及移动距离,如果触摸点的触摸时长不超过第二预设时长,且所述触摸点的移动距离不小于预设距离,则确定所述触摸点是有效触摸点;如果触摸点的触摸时长超过第二预设时长,且触摸点的移动距离小于预设距离,确定所述触摸点是无效触摸点,丢弃所述触摸点。
随着移动终端的屏幕越来越大、边界越来越小,用户的手指极易触碰到屏幕边缘,可能会影响到用户触摸事件的响应。此种场景下,可以根据触摸强度排除干扰触摸点。首先,检测触摸点的触摸强度,如果触摸强度高于或等于预设触摸强度,确定触摸点是有效触摸点;如果触摸强度低于预设触摸强度,则确定触摸点是无效触摸点。
当然,除上述的四种场景外,还可以采用触摸性能参数中的任意组合排除干扰触摸点。
S132,将所述目标控件响应区域内的有效触摸点,组合得到所述新的触摸事件。
目标控件响应区域内的触摸点组合得到一个新的触摸事件,得到的新的触摸事件可能是单点触摸事件,也可能是多点触摸事件,例如,用户用两个手指触摸当前显示界面上的某一个控件响应区域的情况。
本实施例提供的组合得到新的触摸事件的方法,对从即将被丢弃的多点触摸事件中分离出的触摸点进行过滤,过滤掉干扰触摸点,剩下需要应用程序响应的触摸点,即有效触摸点。然后将落在目标控件响应区域内的有效触摸点组合得到一个新的触摸事件,利用该方法得到的新的触摸事件大大降低了事件中的干扰触摸点,精确度高。
请参见图3,示出了本发明实施例一种S120的方法流程示意图,如图3所示,S120可以包括以下步骤:
S121,获取前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据。
在本发明的一个实施例中,可以在需要确定多点触摸事件中的各个触摸点的位置时,再获取前台运行的应用程序的显示界面的目标控件响应区域的位置坐标数据。
在本发明的另一个实施例中,当重点应用程序启动时,就动态获取该应用程序的控件响应区域的位置坐标数据,并存储目标控件响应区域的位置坐标数据,以便后续使用时直接读取。
应用程序的控件响应区域可能随着应用程序的更新而发生变化,因此,当检测到终端设备安装的所述应用程序更新后,更新存储的所述应用程序的各个显示界面的控件响应区域的位置坐标数据,从而保证存储的控件响应区域的位置坐标数据始终与所安装的应用程序相对应。此种方式仅需获取一次重点应用程序的控件响应区域的位置坐标数据,后续使用时直接读取,不需要每次都获取,从而节省了占用的CPU资源。
S122,逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域内。如果是,则执行S123;否则,执行S124。
S123,确定所述触摸点落在前台运行的应用程序的目标控件响应区域内。
S124,确定所述触摸点不在前台运行的应用程序的目标控件响应区域内。然后,将该触摸点丢弃掉。
本实施例提供的确定落在控件响应区域内的触摸点的方法,获取应用程序的显示界面上的目标控件响应区域的位置坐标数据,逐个判断多点触摸事件中的各个触摸点是否落在目标控件响应区域内,找到触摸坐标位于控件响应区域内的触摸点。其中,在获取控件响应区域时,可以在重点应用程序启动时获取控件响应区域的位置坐标数据,并保存目标控件响应区域的位置坐标数据,以便后续直接读取目标控件响应区域的位置坐标数据,不需要每次都获取,从而节省了占用的CPU资源。
相应于上述的触摸事件处理方法实施例,本发明还提供了触摸事件处理装置实施例。
请参见图4,示出了本发明实施例一种触摸事件处理装置的框图,该装置应用于具有触摸屏的终端设备中。如图4所示,所述装置包括:第一判断单元410、确定单元420、组合单元430和传递单元440。
所述第一判断单元410,用于当存在未处理且即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序。
按照触摸事件上传机制,如果存在未处理且即将被丢弃的多点触摸事件,拦截该多点触摸事件,判断前台运行的应用程序是否是重点应用程序。
所述确定单元420,用于当所述前台运行的应用程序是重点应用程序时,从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的目标哦控件响应区域内的触摸点。
所述组合单元430,用于根据落在所述目标控件响应区域内的触摸点,组合得到新的触摸事件。
所述传递单元440,用于将组合得到的新的触摸事件传递给前台运行的应用程序,以使前台运行的应用程序响应所述新的触摸事件。
本实施例提供的触摸事件处理装置,触摸事件处理到末端仍存在没有被处理、即将被丢弃的多点触摸事件时,由判断单元判断前台运行的应用程序是否是重点应用程序。如果前台运行的应用程序是重点应用程序,由确定单元从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的目标控件响应区域内的触摸点。然后,组合单元根据落在所述目标控件响应区域内的触摸点组合得到新的触摸事件,并将新的触摸事件重新传递给所述前台运行的应用程序,使所述前台运行的应用程序响应该新的触摸事件,从而使前台运行的应用程序响应用户的触摸事件,最终避免发生在某些场景下触摸屏不响应用户的触摸操作的现象。
在本发明的一个实施例中,为了比较精确地从当前的全部触摸点中分离出真正需要应用程序响应的触摸点构成的新的触摸事件,组合单元420需要进一步从落在目标控件响应区域内的触摸点中过滤掉无效触摸点,得到有效触摸点。如图5所示,所述组合单元430可以包括过滤子单元431和组合子单元432。
所述过滤子单元431,用于根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点。
所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
在一种应用场景下,触摸点的触摸位置坐标落在应用程序的控件响应区域内,但是触摸点具有一定的移动距离,触摸点的起始位置与终止位置之间的距离大于所述控件响应区域的长度,此时,所述过滤子单元431确定所述触摸点是无效触摸点,并丢弃该触摸点。如果触摸点的触摸位置落在控件响应区域内,且触摸点的起始位置与终止位置之间的距离小于所述控件响应区域的长度,则所述过滤子单元431确定所述触摸点是有效触摸点。
在另一种场景中,鬼手出现在控件响应区域内,而且在预设时长内控件响应区域被点击次数高达成百上千次,此种场景下,可以通过统计某个触摸点在一定时间内被点击的次数过滤掉鬼手触摸点。当所述触摸点在第一预设时长内被点击的次数超过预设次数时,所述过滤子单元431认为所述触摸点是无效触摸点,丢弃该触摸点。如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则所述触摸点是有效触摸点;
在又一种场景中,鬼手触摸时间较长且移动距离较小。此种场景下,检测触摸点的触摸时长及移动距离,如果触摸点的触摸时长不超过第二预设时长,且所述触摸点的移动距离不小于预设距离,则所述过滤子单元431确定所述触摸点是有效触摸点;如果触摸点的触摸时长超过第二预设时长,且所述触摸点的移动距离小于预设距离,则所述过滤子单元431确定所述触摸点是无效触摸点,丢弃所述触摸点。
随着移动终端的屏幕越来越大、边界越来越小,用户的手指极易触碰到屏幕边缘,可能会影响到用户触摸事件的响应。此种场景下,可以根据触摸强度排除干扰触摸点。首先,检测触摸点的触摸强度,如果触摸强度高于或等于预设触摸强度,确定触摸点是有效触摸点;如果触摸强度低于预设触摸强度,则确定触摸点是无效触摸点。
当然,除上述的四种场景外,还可以采用触摸性能参数中的任意组合排除干扰触摸点。
所述组合子单元432,用于将落在所述目标控件响应区域内的有效触摸点,组合得到新的触摸事件。
本实施例提供的所述组合单元,对从未处理的多点触摸事件中分离出的触摸点进行过滤,过滤掉干扰触摸点,得到需要前台运行的应用程序响应的触摸点,即有效触摸点。然后将落在前台运行的应用程序的目标控件响应区域内的有效触摸点组合得到一个新的触摸事件,利用该方法得到的新的触摸事件大大降低了事件中的干扰触摸点,精确度高。
请参见图6,示出了本发明实施例一种确定单元的框图,所述确定单元420包括:获取子单元421、判断子单元422和确定子单元423。
所述获取子单元421,用于获取前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据。
应用程序的当前显示界面是指具有触摸屏的终端设备当前显示的该应用程序的显示界面,即应用程序的当前显示界面。获取应用程序的当前显示界面上的全部控件对应的控件响应区域,并确定目标控件对应的控件响应区域作为目标响应区域。
在本发明的一个实施例中,可以在需要确定多点触摸事件中的各个触摸点的位置时,获取前台运行的应用程序的当前显示界面的目标控件响应区域的位置坐标数据。
在本发明的另一个实施例中,当重点应用程序启动时,就动态获取该应用程序的控件响应区域的位置坐标数据,并存储所述应用程序的各个显示界面的目标控件响应区域的位置坐标数据,以便后续使用时直接读取。
应用程序的控件响应区域可能随着应用程序的更新而发生变化,因此,当检测到终端设备安装的所述应用程序更新后,更新存储的所述应用程序的各个显示界面的控件响应区域的位置坐标数据,从而保证存储的控件响应区域的位置坐标数据始终与所安装的应用程序相对应。
所述判断子单元422,用于逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域内;
所述确定子单元423,用于如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在前台运行的应用程序的目标控件响应区域内。
本实施例提供的确定单元,由获取子单元获取前台运行的应用程序的当前显示界面的目标控件响应区域的位置坐标数据,逐个判断多点触摸事件中的各个触摸点是否落在所述目标控件响应区域内,找到触摸坐标位于目标控件响应区域内的触摸点。其中,在获取控件响应区域时,可以在重点应用程序启动时获取控件响应区域的位置坐标数据,并保存目标控件响应区域的位置坐标数据,以便后续直接读取控件响应区域的位置坐标数据不需要每次都获取,从而节省了占用的CPU资源。
相应于上述的触摸事件处理方法实施例,本发明还提供了应用所述触摸事件处理方法的终端设备的实施例。
请参见图7,示出了本发明实施例提供的一种终端设备的结构框图,该终端设备600包括:至少一个处理器601,至少一个通信总线602,触摸屏603,存储器604。通信总线602用于实现这些组件之间的连接通信;触摸屏603用于实现上述的触摸事件处理方法。
触摸屏603可以包括电容式触摸屏或电阻式触摸屏。
存储器604可以包括只读存储器和随机存取存储器,并向处理器601提供指令和数据。存储器604的一部分还可以包括非易失性随机存取存储器(NVRAM)。
在一些实施方式中,存储器604存储了如下的元素,可执行模块或者数据结构,或者他们的子集,或者他们的扩展集;本实施例中,存储器604包括操作系统6041和应用程序模块6042。
操作系统6041包含各种系统程序,用于实现各种基础业务以及处理基于硬件的任务;
应用程序模块6042包含各种应用程序,例如桌面(launcher)、媒体播放器(MediaPlayer)、浏览器(Browser)等,用于实现各种应用业务。
在本发明实施例中,通过调用存储器604存储的程序或指令,处理器601用于:
当存在未处理、即将被丢弃的多点触摸事件,判断前台运行的应用程序是否是重点应用程序;
如果前台运行的应用程序是重点应用程序,从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的目标控件响应区域内的触摸点;
根据落在前台运行的应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件;
将组合得到的新的触摸事件传递给前台运行的应用程序,以使前台运行的应用程序响应所述新的触摸事件。
可选地,作为一个实施例,所述处理器601用于根据前台运行的应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件时,具体用于:
根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
将所述目标控件响应区域内的有效触摸点,组合得到所述新的触摸事件。
进一步地,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
则所述处理器601用于从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点时,具体用于:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
可选地,作为本发明一个实施例,所述处理器601用于从所述多点触摸事件的各个触摸点中,确定出落在前台运行的应用程序的目标控件响应区域内的触摸点时,具体用于:
获取前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域的位置坐标范围内;
如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
可选地,作为本发明一个实施例,所述处理器601用于获取所述应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据时,具体用于:
当前台运行的应用程序启动时,获取前台运行的应用程序的各个显示界面的控件响应区域的位置坐标数据,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。
可见,采用上述方案后,当触摸事件处理到末端仍存在没有被处理的多点触摸事件,而且,前台运行的应用程序是重点应用程序时,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点。然后,根据落在所述目标控件响应区域内的触摸点组合得到新的触摸事件,并将新的触摸事件重新传递给所述前台运行的应用程序,从而使所述前台运行的应用程序响应该新的触摸事件,即前台运行的应用程序响应用户的触摸事件,最终解决在某些场景下触摸屏不响应用户的触摸操作的问题。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置或系统实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。以上所描述的装置及系统实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本发明,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
以上所述仅是本发明的具体实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (18)

1.一种触摸事件处理方法,其特征在于,包括:
当存在未处理、即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序,其中,所述重点应用程序为系统设定的应用程序,或者,为用户预先设定的应用程序;
如果所述前台运行的应用程序是重点应用程序,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点;
根据落在所述目标控件响应区域内的触摸点,组合得到新的触摸事件;
将组合得到的新的触摸事件传递给所述前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
2.根据权利要求1所述的方法,其特征在于,所述根据落在所述目标控件响应区域内的触摸点,组合得到新的触摸事件,包括:
根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
将所述目标控件响应区域内的有效触摸点,组合得到所述新的触摸事件。
3.根据权利要求2所述的方法,其特征在于,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
4.根据权利要求3所述的方法,其特征在于,所述根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点,包括:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
5.根据权利要求1-4任一项所述的方法,其特征在于,所述从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点,包括:
获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域对应的位置坐标范围内;
如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
6.根据权利要求5所述的方法,其特征在于,所述获取所述前台运行应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据,包括:
当所述前台运行的应用程序启动时,获取所述前台运行的应用程序的各个显示界面的控件响应区域的位置坐标数据,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。
7.一种触摸事件处理装置,其特征在于,包括:
第一判断单元,用于当存在未处理、即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序,其中,所述重点应用程序为系统设定的应用程序,或者,为用户预先设定的应用程序;
确定单元,用于当所述前台运行的应用程序是重点应用程序时,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点;
组合单元,用于根据落在所述前台运行的应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件;
传递单元,用于将组合得到的新的触摸事件传递给所述前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
8.根据权利要求7所述的装置,其特征在于,所述组合单元包括:
过滤子单元,用于根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
组合子单元,用于将落在所述目标控件响应区域内的有效触摸点,组合得到新的触摸事件。
9.根据权利要求8所述的装置,其特征在于,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
10.根据权利要求9所述的装置,其特征在于,所述过滤子单元具体用于:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则所述触摸点是有效触摸;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
11.根据权利要求7-10任一项所述的装置,其特征在于,所述确定单元,包括:
获取子单元,用于获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
判断子单元,用于逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域对应的位置坐标范围内;
确定子单元,用于如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
12.根据权利要求11所述的装置,其特征在于,所述获取子单元具体用于:
当所述前台运行的应用程序启动时,获取所述前台运行的应用程序的各个显示界面的控件响应区域,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。
13.一种具有触摸屏的终端设备,其特征在于,包括处理器和存储器,
通过调用所述存储器内存储的程序或指令,所述处理器用于:
当存在未处理、即将被丢弃的多点触摸事件时,判断前台运行的应用程序是否是重点应用程序,其中,所述重点应用程序为系统设定的应用程序,或者,为用户预先设定的应用程序;
如果所述前台运行的应用程序是重点应用程序,从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点;
根据落在所述前台运行的应用程序的控件响应区域内的触摸点,组合得到新的触摸事件;
将组合得到的新的触摸事件传递给所述前台运行的应用程序,以使所述前台运行的应用程序响应所述新的触摸事件。
14.根据权利要求13所述的终端设备,其特征在于,所述处理器用于根据所述前台运行的应用程序的目标控件响应区域内的触摸点,组合得到新的触摸事件时,具体用于:
根据触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点;
将所述目标控件响应区域内的有效触摸点,组合得到所述新的触摸事件。
15.根据权利要求14所述的终端设备,其特征在于,所述触摸性能参数包括点击次数、触摸点的移动距离、触摸时长和触摸强度中的任意一种或任意多种组合。
16.根据权利要求14所述的终端设备,其特征在于,所述处理器用于根据所述触摸性能参数,从所述目标控件响应区域内的触摸点中过滤掉干扰触摸点,得到有效触摸点时,具体用于:
如果所述触摸点在第一预设时长内被点击的次数未超过预设次数,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点落在所述目标控件响应区域内,且所述触摸点的起始位置到终止位置之间的距离小于所述目标控件响应区域的长度,则确定所述触摸点是有效触摸点;
和/或,
如果所述触摸点的触摸时长不超过第二预设时长,且所述触摸点的起始位置到终止位置之间的距离不小于预设距离,则确定所述触摸点是有效触摸点;
和/或,
检测所述触摸点的触摸强度,如果所述触摸强度高于或等于预设触摸强度,确定所述触摸点是有效触摸点。
17.根据权利要求13所述的终端设备,其特征在于,所述处理器用于从所述多点触摸事件的各个触摸点中,确定出落在所述前台运行的应用程序的目标控件响应区域内的触摸点时,具体用于:
获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据;
逐个判断所述多点触摸事件中的各个触摸点的触摸位置坐标是否落在所述当前显示界面的目标控件响应区域对应的位置坐标范围内;
如果所述触摸点的触摸位置坐标落在所述当前显示界面的目标控件响应区域内,确定所述触摸点落在所述前台运行的应用程序的目标控件响应区域内。
18.根据权利要求17所述的终端设备,其特征在于,所述处理器用于获取所述前台运行的应用程序的当前显示界面的目标控件响应区域对应的位置坐标数据时,具体用于:
当所述前台运行的应用程序启动时,获取所述前台运行的应用程序的各个显示界面的控件响应区域的位置坐标数据,并存储各个显示界面的目标控件响应区域的位置坐标数据;
当检测到所述前台运行的应用程序更新后,更新存储的所述前台运行的应用程序的各个显示界面的目标控件响应区域的位置坐标数据。
CN201580021516.7A 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备 Active CN106462351B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201911033084.8A CN110825304B (zh) 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/CN2015/074585 WO2016145657A1 (zh) 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201911033084.8A Division CN110825304B (zh) 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备

Publications (2)

Publication Number Publication Date
CN106462351A CN106462351A (zh) 2017-02-22
CN106462351B true CN106462351B (zh) 2019-11-12

Family

ID=56920385

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201911033084.8A Active CN110825304B (zh) 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备
CN201580021516.7A Active CN106462351B (zh) 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201911033084.8A Active CN110825304B (zh) 2015-03-19 2015-03-19 触摸事件处理方法、装置及终端设备

Country Status (4)

Country Link
US (1) US10379671B2 (zh)
EP (3) EP3674857B1 (zh)
CN (2) CN110825304B (zh)
WO (1) WO2016145657A1 (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106484288A (zh) * 2016-09-28 2017-03-08 依偎科技(南昌)有限公司 一种终端控制方法以及移动终端
CN108073347B (zh) * 2017-12-15 2019-07-05 掌阅科技股份有限公司 多点触控的处理方法、计算设备及计算机存储介质
CN110134463B (zh) * 2018-02-02 2022-07-26 斑马智行网络(香港)有限公司 数据处理方法、装置、设备和机器可读介质
CN108376050A (zh) * 2018-02-24 2018-08-07 海信(山东)空调有限公司 家用电器及其控制方法和控制组件
CN109725959A (zh) * 2018-05-08 2019-05-07 平安普惠企业管理有限公司 页面控件的响应方法、显示设备及计算机可读存储介质
CN113325966A (zh) * 2020-02-28 2021-08-31 北京小米移动软件有限公司 报点处理方法、报点处理装置及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218148A (zh) * 2011-12-29 2013-07-24 苹果公司 用于配置与用户接口的受约束的交互的装置、方法和图形用户接口
CN103268197A (zh) * 2013-04-28 2013-08-28 华为技术有限公司 一种锁定屏幕的方法、装置和终端设备
CN104102437A (zh) * 2013-04-03 2014-10-15 华为技术有限公司 在多点触摸设备上进行操作的方法及多点触摸设备
CN104364750A (zh) * 2013-01-06 2015-02-18 英特尔公司 用于触摸数据和显示区域控制的分布式预处理的方法、装置和系统

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7956847B2 (en) * 2007-01-05 2011-06-07 Apple Inc. Gestures for controlling, manipulating, and editing of media files using touch sensitive devices
CN101661363A (zh) 2008-08-28 2010-03-03 比亚迪股份有限公司 一种多点触摸感应系统的应用方法
CN102053748A (zh) * 2009-10-28 2011-05-11 鸿富锦精密工业(深圳)有限公司 一种多点式触摸屏热键管理系统及方法
US20130002602A1 (en) 2011-06-28 2013-01-03 Suzana Apelbaum Systems And Methods For Touch Screen Image Capture And Display
CN102768607B (zh) * 2011-11-02 2014-12-31 联想(北京)有限公司 一种实现触控操作应用程序的方法及装置
DE102012110278A1 (de) 2011-11-02 2013-05-02 Beijing Lenovo Software Ltd. Verfahren und Vorrichtungen zur Fensterdarstellung und Verfahren und Vorrichtungen zur Berührungsbedienung von Anwendungen
US9046958B2 (en) * 2012-03-15 2015-06-02 Nokia Technologies Oy Method, apparatus and computer program product for user input interpretation and input error mitigation
CN103324325B (zh) * 2012-03-21 2016-02-10 宇龙计算机通信科技(深圳)有限公司 多点触摸误操作的检测方法及终端
CN103455266A (zh) * 2012-06-04 2013-12-18 华为终端有限公司 一种触摸屏的误触摸操作的处理方法及终端设备
KR20140016655A (ko) * 2012-07-30 2014-02-10 (주)라온제나 오브젝트에 대한 터치를 식별하는 멀티터치 인식 장치 및 방법
CN103513914B (zh) * 2013-03-13 2016-05-11 展讯通信(上海)有限公司 应用对象的触摸控制方法与装置
KR102123406B1 (ko) * 2013-07-05 2020-06-16 삼성전자주식회사 멀티 터치 입력을 지원하는 터치스크린을 구비한 모바일 단말기 및 그의 제어 방법
CN103513871B (zh) * 2013-09-30 2017-03-15 北界创想(北京)软件有限公司 控制移动终端的方法和装置
CN104007932B (zh) * 2014-06-17 2017-12-29 华为技术有限公司 一种触摸点识别方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103218148A (zh) * 2011-12-29 2013-07-24 苹果公司 用于配置与用户接口的受约束的交互的装置、方法和图形用户接口
CN104364750A (zh) * 2013-01-06 2015-02-18 英特尔公司 用于触摸数据和显示区域控制的分布式预处理的方法、装置和系统
CN104102437A (zh) * 2013-04-03 2014-10-15 华为技术有限公司 在多点触摸设备上进行操作的方法及多点触摸设备
CN103268197A (zh) * 2013-04-28 2013-08-28 华为技术有限公司 一种锁定屏幕的方法、装置和终端设备

Also Published As

Publication number Publication date
EP3264249A1 (en) 2018-01-03
EP4141628A1 (en) 2023-03-01
US20180088731A1 (en) 2018-03-29
EP3264249A4 (en) 2018-03-14
EP3674857B1 (en) 2022-04-20
WO2016145657A1 (zh) 2016-09-22
EP3264249B1 (en) 2019-12-18
US10379671B2 (en) 2019-08-13
CN110825304A (zh) 2020-02-21
CN106462351A (zh) 2017-02-22
EP3674857A1 (en) 2020-07-01
CN110825304B (zh) 2023-04-21
EP4141628B1 (en) 2024-03-06

Similar Documents

Publication Publication Date Title
CN106462351B (zh) 触摸事件处理方法、装置及终端设备
CN105045514B (zh) 一种应用进程管理方法及终端
CN105487809A (zh) 一种终端的控制方法及装置
CN103440092B (zh) 一种返回按键的处理方法、系统及移动终端
EP3220251A1 (en) Method and system based on mobile terminal for turning off screen during call to prevent inadvertent touch
CN106990883B (zh) 图标移动方法、图标移动系统及终端
CN103257818A (zh) 单手操作触摸屏图标的方法和装置
CN107596688B (zh) 技能释放控制方法及装置、存储介质、处理器和终端
WO2015120704A1 (zh) 锁屏界面中应用程序快捷方式的显示方法及系统
CN110493018A (zh) 一种群聊创建方法和装置
CN106775182A (zh) 一种悬浮控件的处理方法和装置
CN103685744A (zh) 一种应用界面的ui元素不可点击设置方法和系统
CN109963182A (zh) 一种遥控器兼容输入方法、系统、存储介质及电视机
CN104156120B (zh) 一种触控方式的切换方法、装置及移动设备
CN103744586A (zh) 移动终端及其菜单项设置方法、装置
CN105579945B (zh) 数字设备及其控制方法
CN106354300A (zh) 一种防误操作的方法及终端
KR101731316B1 (ko) 파일 일괄 처리 방법
CN104598097A (zh) 即时通信im窗口的排序方法和装置
CN105573610B (zh) 一种电子表格操作方法及装置
CN109101180A (zh) 一种屏幕电子设备交互方法及其交互系统和电子设备
WO2019071571A1 (zh) 信息处理方法、相关设备及计算机存储之介质
CN104635990B (zh) 一种识别用户触屏的方法及装置
CN110430327A (zh) 一种适用于盲人操作手机的来电智能处理方法
WO2016101613A1 (zh) 一种基于可交互式屏幕的信息指令输入方法及其装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant