代理手势识别器的制作方法

文档序号:18939623发布日期:2019-10-23 01:02阅读:147来源:国知局
代理手势识别器的制作方法
相关的专利申请本专利申请涉及:(a)2011年3月31日提交的名称为“eventrecognition”的美国专利申请序列号13/077,925,该申请要求2010年12月20日提交的名称为“eventrecognition”的美国临时申请序列号61/425,222的优先权;(b)2009年9月24日提交的名称为“eventrecognition”的美国专利申请序列号12/566,660,该申请要求2009年3月16日提交的名称为“eventrecognition”的美国临时申请序列号61/210,332的优先权;(c)2010年5月28日提交的名称为“gesturerecognizerswithdelegatesforcontrollingandmodifyinggesturerecognition”的美国专利申请序列号12/789,695,该申请要求2010年1月26日提交的名称为“gesturerecognizerswithdelegatesforcontrollingandmodifyinggesturerecognition”的美国临时申请序列号61/298,531的优先权;(d)2011年3月31提交的名称为“device,method,andgraphicaluserinterfacefornavigationofconcurrentlyopensoftwareapplications”的美国专利申请序列号13/077,524;(e)2011年3月31日提交的名称为“eventrecognition”的美国专利申请序列号13/077,927;(f)2011年3月31日提交的名称为“eventrecognition”的美国专利申请序列号13/077,931;(g)2013年3月15提交的名称为“device,method,andgraphicaluserinterfaceformanagingconcurrentlyopensoftwareapplications”的美国临时专利申请序列号61/802,068;以及(h)2013年3月15提交的名称为“device,method,andgraphicaluserinterfaceformanagingconcurrentlyopensoftwareapplications”的美国临时专利申请序列号61/801,943。所有这些专利申请均全文以引用方式并入本文。本文整体涉及用户界面处理,包括但不限于用于识别触摸手势的装置和方法。
背景技术
:电子设备通常包括用于与计算设备进行交互的用户界面。用户界面可包括显示器和/或输入设备,诸如键盘、鼠标以及用于与用户界面的各个方面进行交互的触敏表面。在具有触敏表面作为输入设备的一些设备中,接收基于触摸的手势(例如,轻击、双击、水平轻扫、竖直轻扫、捏合、张开、两指轻扫)。因此,识别基于触摸的手势并对其作出响应所需的软件和逻辑可能变得复杂,并且其可能难以确定哪个软件和逻辑应识别基于触摸的手势并对其作出响应。这些问题和类似问题可能出现在利用除基于触摸的手势以外的输入源的用户界面中。因此,期望具有可容易地适用于计算设备上所有应用程序的几乎所有上下文或模式并且在更新应用程序或向计算设备添加新应用程序时需要很少修正或几乎不需要修正的综合框架或机制以用于协调触摸手势的处理。技术实现要素:为解决上述缺陷,一些实施例提供了在具有触敏表面的电子设备上实施的方法。该方法包括显示多个视图中的一个或多个视图。所述一个或多个所显示视图中的第一视图包括多个手势识别器。第一视图中的所述多个手势识别器包括一个或多个代理手势识别器和一个或多个非代理手势识别器。每个手势识别器指示多个预定义的状态中的一个预定义的状态。第一视图中的第一代理手势识别器指示与未处于第一视图中的相应的非代理手势识别器的状态对应的状态。该方法还包括检测一个或多个子事件的序列;并且将相应子事件递送至未处于第一视图中的相应的非代理手势识别器和第一视图中的一个或多个非代理手势识别器的至少子组。此外,该方法还包括根据第一视图中的第一代理手势识别器的状态和一个或多个非代理手势识别器的至少子组的状态处理相应子事件。根据一些实施例,非瞬时性计算机可读存储介质存储一个或多个程序以便由电子设备的多个处理器中的一个处理器执行。所述一个或多个程序包括指令,这些指令在由电子设备执行时使得该设备实施上述方法。根据一些实施例,具有触敏显示器的电子设备包括一个或多个处理器、以及存储一个或多个程序以便由一个或多个处理器执行的存储器。所述一个或多个程序包括用于实施上述方法的指令。根据一些实施例,具有触敏显示器的电子设备包括用于实施上述方法的装置。根据一些实施例,具有触敏显示器的多功能设备中的信息处理装置包括用于实施上述方法的装置。根据一些实施例,电子设备包括被配置为接收触摸输入的触敏表面单元和耦接至触敏表面单元的处理单元。该处理单元被配置为使能显示多个视图中的一个或多个视图。所述一个或多个所显示视图中的第一视图包括多个手势识别器。第一视图中的所述多个手势识别器包括一个或多个代理手势识别器和一个或多个非代理手势识别器。每个手势识别器指示多个预定义的状态中的一个预定义的状态。第一视图中的第一代理手势识别器指示与未处于第一视图中的相应的非代理手势识别器的状态对应的状态。处理单元还被配置为检测一个或多个子事件的序列;将相应子事件递送至未处于第一视图中的相应的非代理手势识别器和第一视图中的一个或多个非代理手势识别器的至少子组;并且根据第一视图中的第一代理手势识别器的状态和一个或多个非代理手势识别器的至少子组的状态处理相应子事件。附图说明图1a至图1c是示出根据一些实施例的电子设备的框图。图2是根据一些实施例的示例性电子设备的输入/输出处理堆栈的示意图。图3a示出根据一些实施例的示例性视图分级结构。图3b和图3c是示出根据一些实施例的示例性事件识别器方法和数据结构的框图。图3d是示出根据一些实施例的用于事件处理的示例性组件的框图。图3e是示出根据一些实施例的手势识别器的示例性类和实例的框图。图3f至图3i是示出根据一些实施例的事件信息流的框图。图4a和图4b是示出根据一些实施例的示例性状态机的流程图。图4c示出根据一些实施例的与一组示例性子事件对应的图4a和图4b的示例性状态机。图5a至图5c示出根据一些实施例的具有示例性事件识别器状态机的示例性子事件序列。图6a和图6b是根据一些实施例的事件识别方法流程图。图7a至图7u示出根据一些实施例的示例性用户界面和由事件识别器识别以便导航同时打开的应用程序的用户输入。图8a和图8b是示出根据一些实施例的事件识别方法的流程图。图9a至图9c是示出根据一些实施例的事件识别方法的流程图。图10a至图10b是示出根据一些实施例的事件识别方法的流程图。图11为根据一些实施例的电子设备的功能框图。图12为根据一些实施例的电子设备的功能框图。图13为根据一些实施例的电子设备的功能框图。图14a至图14b是示出根据一些实施例的事件识别方法的流程图。图15为根据一些实施例的电子设备的功能框图。类似的附图编号指代附图中的对应组件。具体实施方式具有小屏幕的电子设备(例如,智能电话和平板电脑)通常一次显示单个应用程序,即使可以在该设备上运行多个应用程序。许多这些设备具有被配置为接收作为触摸输入的手势的触敏显示器。借助此类设备,用户可能想要实施由隐藏的应用程序(如,正在后台运行并且当前未显示在电子设备的显示器上的应用程序,诸如正在后台运行的应用程序启动器软件应用程序)提供的操作。用于实施由隐藏的应用程序提供的操作的现有方法通常需要首先显示该隐藏的应用程序,然后向当前显示的应用程序提供触摸输入。因此,现有方法需要另外的步骤。此外,用户可能不想看到隐藏的应用程序,但仍想要实施由该隐藏的应用程序提供的操作。在下文所述的一些实施例中,用于与隐藏的应用程序进行交互的改进方法通过将触摸输入递送至隐藏的应用程序、以及在不显示隐藏的应用程序的情况下利用该隐藏的应用程序处理这些触摸输入来实现。因此,这些方法简化了与隐藏的应用程序的交互,从而无需用于显示隐藏的应用程序的另外单独的步骤,同时提供基于手势输入控制隐藏的应用程序并与其进行交互的能力。另外,在一些实施例中,当前显示的应用程序和隐藏的应用程序两者具有相应的手势识别器。在一些实施例中,当前显示的应用程序的手势识别器和隐藏的应用程序的手势识别器被配置为响应于类似手势。例如,当前显示的应用程序的手势识别器可被配置为响应于任何轻扫手势,同时隐藏的应用程序的手势识别器可被配置为响应于边缘轻扫手势(例如,源自或邻近触敏显示器边缘的轻扫手势)。因此,协调不同应用程序中或单个应用程序的不同视图中的手势识别器很重要。然而,协调不同应用程序中或不同视图中的手势识别器比协调同一应用程序的同一视图中的手势识别器更具有挑战性。在下文所述的一些实施例中,用于控制相应手势识别器的改进方法通过在具有相应手势识别器的同一视图中提供与不同视图或不同应用程序中的手势识别器对应的一个或多个代理手势识别器来实现。下面,图1a至图1c和图2提供了对示例性设备的描述。图3a至图3i描述了用于事件处理的组件和此类组件的操作(例如,事件信息流)。图4a至图4c和图5a至图5c更详细地描述了事件识别器的操作。图6a至图6b是示出事件识别方法的流程图。图7a至图7u是示出使用图8a至图8b、图9a至图9c、图10a至图10b和图14a至图14b中的事件识别方法的操作的示例性用户界面。图8a至图8b是示出使用隐藏的打开的应用程序的手势处理程序处理事件信息的事件识别方法的流程图。图9a至图9c是示出使用隐藏的打开的应用程序或所显示的应用程序的手势识别器有条件地处理事件信息的事件识别方法的流程图。图10a至图10是示出为单个事件识别器选择多个事件定义中的一个事件定义的事件识别方法的流程图。图14a至图14b是示出根据一些实施例的事件识别方法的流程图。图11至图13和图15是根据一些实施例的电子设备的功能框图。现在将详细地参考实施例,这些实施例的示例在附图中被示出。在下面的详细描述中给出了许多具体细节,以便提供对本发明的彻底理解。但是,对本领域技术人员将显而易见的是,本发明可在没有这些具体细节的情况下被实施。在其他情况下,没有详细地描述众所周知的方法、过程、组件、电路和网络,从而不会不必要地使实施例的方面晦涩难懂。还将理解的是,虽然术语“第一”、“第二”等可能在本文中被用来描述各种元素,但是这些元素不应当被这些术语限定。这些术语只是用来将一个元素与另一个元素区分开。例如,第一接触可被命名为第二接触,并且类似地,第二接触可被命名为第一接触,而不脱离本发明的范围。第一接触和第二接触为同时接触,但它们不是同一个接触。在本文中对本发明的描述中所使用的术语只是为了描述特定实施例,并非旨在作为对本发明的限制。如本发明说明书和所附权利要求中所使用的那样,单数形式的“一个”、“一种”和“这个”旨在也包括复数形式,除非上下文清楚地有相反指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”和/或“包含”当在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元素和/或组件,但是并不排除存在或添加一个或多个其它特征、整数、步骤、操作、元素、组件和/或其分组。如本文所用,根据上下文,术语“如果”可以被解释为意指“当……时”或“在……时”或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果其被确定”或“如果检测到[所陈述的条件或事件]”可被解释为意指“在确定……时”或“响应于确定”或“在检测到(所陈述的条件或事件)时”或“响应于检测到(所陈述的条件或事件)”。如本文所用,术语“事件”是指由设备的一个或多个传感器检测到的输入。具体地讲,术语“事件”包括触敏表面上的触摸。事件包括一个或多个子事件。子事件通常是指事件的变化(例如,触摸向下、触摸移动和触摸的抬离可以是子事件)。一个或多个子事件的序列中的子事件可包括多种形式,包括但不限于按键按下、按键按住、按键按下释放、按钮按下、按钮按住、按钮按下释放、操纵杆移动、鼠标移动、鼠标按钮按下、鼠标按钮释放、触控笔触摸、触控笔移动、触控笔释放、口头指令、检测到的眼移动、生物计量输入和检测到的用户生理变化等等。由于事件可包括单个子事件(例如,设备的短横向运动),因此如本文所用,术语“子事件”还指代事件。如本文所用,术语“事件识别器”和“手势识别器”可互换地用于指代可识别手势或其他事件(例如,设备的运动)的识别器。如本文所用,术语“事件处理程序”和“手势处理程序”可互换地用于指代响应于事件/子事件或手势的识别而实施一组预定义的操作(例如,更新数据、一个或多个更新对象、和/或更新显示)的处理程序。如上所述,在具有触敏表面作为输入设备的一些设备中,第一组基于触摸的手势(例如,下列中的两者或更多者:轻击、双击、水平轻扫、竖直轻扫)在特定上下文中(例如,在第一应用程序的特定模式中)被识别为正确输入,并且其他不同组的基于触摸的手势在其他上下文(例如,不同应用程序和/或第一应用程序内的不同模式或上下文)中被识别为正确输入。因此,识别基于触摸的手势并对其作出响应所需的软件和逻辑可能变得复杂,并且每当更新应用程序或向计算设备添加新应用程序时可能需要修正。本文所述的实施例通过提供用于处理事件和/或手势输入的综合框架来解决这些问题。在下文所述的实施例中,基于触摸的手势是事件。在识别预定义的事件(例如,在应用程序的当前上下文中对应于正确输入的事件)时,关于事件的信息被递送至应用程序。此外,每个相应事件被定义为子事件的序列。在具有多点触摸显示设备(在本文中通常称为“屏幕”)或其他多点触敏表面并且接受基于多点触摸的手势的设备中,定义基于多点触摸的事件的子事件可包括多点触摸子事件(需要两个或更多个手指同时与设备的触敏表面接触)。例如,在具有多点触敏显示器的设备中,子事件的相应多点触摸序列可在用户的手指首次触摸屏幕时开始。另外的子事件可在一个或多个另外的手指随后或同时触摸屏幕时发生,并且其他子事件可在触摸屏幕的所有手指在屏幕上移动时发生。序列在用户的最后一根手指从屏幕抬起时结束。当使用基于触摸的手势以控制正在具有触敏表面的设备中运行的应用程序时,触摸具有时间和空间两方面。时间方面(称为时长)指示触摸何时已开始、触摸是正在移动的还是静止的、以及触摸何时结束(即,手指何时从屏幕抬起)。触摸的空间方面是其中发生触摸的一组视图或用户界面窗口。在其中检测到触摸的视图或窗口可对应于编程或视图分级结构内的编程层级。例如,在其中检测到触摸的最低层级视图可称为命中视图,并且被识别为正确输入的该组事件可至少部分地基于开始基于触摸的手势的初始触摸的命中视图来确定。另选地或除此之外,事件至少部分地基于编程分级结构中的一个或多个软件程序(即,软件应用程序)被识别为正确输入。例如,五指捏合手势在具有五指捏合手势识别器的应用程序启动器中被识别为正确输入,但在不具有五指捏合手势识别器的网络浏览器应用程序中不能被识别为正确输入。图1a至图1c是示出根据一些实施例的电子设备102的不同实施例的框图。电子设备102可以是任何电子设备,包括但不限于台式计算机系统、膝上型计算机系统、移动电话、智能电话、个人数字助理或导航系统。电子设备102还可以是具有被配置为呈现用户界面的触摸屏显示器(例如,触敏显示器156,图1b)的便携式电子设备、具有被配置为呈现用户界面的触摸屏显示器的计算机、具有触敏表面和被配置为呈现用户界面的显示器的计算机、或任何其他形式的计算设备,包括但不限于消费者电子设备、移动电话、视频游戏系统、电子音乐播放器、平板pc、电子书阅读系统、电子书、pda、电子记事本、电子邮件设备、膝上型计算机或其他计算机、信息亭计算机、售货机、智能家电等。电子设备102包括用户界面113。在一些实施例中,电子设备102包括触敏显示器156(图1b)。在这些实施例中,用户界面113可包括由用户用于与电子设备102进行交互的屏幕键盘(未示出)。在一些实施例中,电子设备102还包括一个或多个输入设备128(例如,键盘、鼠标、触控球、麦克风、一个或多个物理按钮、触摸板等)。在一些实施例中,触敏显示器156具有检测两个或更多个不同的并发(或部分并发)触摸的能力,并且在这些实施例中,显示器156在本文中有时称为多点触摸显示器或多点触敏显示器。在一些实施例中,一个或多个输入设备128的键盘可与电子设备102分离并且不同于电子设备102。例如,键盘可以是耦接至电子设备102的有线或无线键盘。在一些实施例中,电子设备102包括显示器126和耦接至电子设备102的一个或多个输入设备128(例如,键盘、鼠标、触控球、麦克风、物理按钮、触摸板、触控板等)。在这些实施例中,输入设备128中的一个或多个输入设备可任选地与电子设备102分离并且不同于电子设备102。例如,所述一个或多个输入设备可包括下列中的一者或多者:键盘、鼠标、触控板、触控球和电子笔,其中的任一者可任选地与电子设备分离。任选地,设备102可包括一个或多个传感器116,诸如一个或多个加速计、陀螺仪、gps系统、扬声器、红外(ir)传感器、生物计量传感器、相机等。应当注意,对作为输入设备128或作为传感器116的各种示例性设备的以上描述对于本文所述的实施例的操作没有意义,并且在本文中被描述为输入设备的任何输入或传感器设备可同样被描述为传感器,并且反之亦然。在一些实施例中,使用由一个或多个传感器116产生的信号作为输入源以用于检测事件。在一些实施例中,电子设备102包括触敏显示器156(即,具有触敏表面的显示器)和耦接至电子设备102的一个或多个输入设备128(图1b)。在一些实施例中,触敏显示器156具有检测两个或更多个不同的并发(或部分并发)触摸的能力,并且在这些实施例中,显示器156在本文中有时称为多点触摸显示器或多点触敏显示器。在本文所论述的电子设备102的一些实施例中,输入设备128设置在电子设备102中。在其他实施例中,输入设备128中的一个或多个输入设备与电子设备102分离并且不同于电子设备102。例如,输入设备128中的一个或多个输入设备可由缆线(例如,usb缆线)或无线连接(例如,蓝牙连接)耦接至电子设备102。当使用输入设备128时,或当在电子设备102的触敏显示器156上实施基于触摸的手势时,用户生成子事件的序列,这些子事件由电子设备102的一个或多个cpu110处理。在一些实施例中,电子设备102的一个或多个cpu110处理子事件的序列以识别事件。电子设备102通常包括一个或多个单核或多核处理单元(一个或多个“cpu”)110以及一个或多个网络或其他通信接口112。电子设备102包括存储器111和用于互连这些组件的一个或多个通信总线115。通信总线115可包括互连系统组件(在本文中未示出)并且控制这些系统组件之间的通信的电路系统(有时称为芯片组)。如上所述,电子设备102包括用户界面113,用户界面113包括显示器(例如,显示器126或触敏显示器156)。此外,电子设备102通常包括输入设备128(例如,键盘、鼠标、触敏表面、小键盘等)。在一些实施例中,输入设备128包括屏幕输入设备(例如,显示设备的触敏表面)。存储器111可包括高速随机存取存储器,例如dram、sram、ddrram或其他随机存取固态存储器设备;并且可包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器111可任选地包括远离一个或多个cpu110定位的一个或多个存储设备。存储器111或另选地存储器111内的一个或多个非易失性存储器设备包括计算机可读存储介质。在一些实施例中,存储器111或存储器111内的一个或多个非易失性存储器设备包括非瞬时性计算机可读存储介质。在一些实施例中,(电子设备102的)存储器111或存储器111的计算机可读存储介质存储以下程序、模块和数据结构,或它们的子组:·操作系统118,包括用于处理各种基础系统服务和用于实施硬件相关任务的过程;·可访问性模块127(图1c),其用于修改应用软件124中的一个或多个软件应用程序的行为,或修改来自触敏显示器156或一个或多个输入设备128的数据以提高应用软件124中的一个或多个软件应用程序的可访问性或对其中显示的内容(例如,网页)的可访问性(例如,对于具有视力障碍或运动能力有限的人);·通信模块120,其用于经由一个或多个相应通信接口112(有线或无线)和一个或多个通信网络(诸如互联网、其他广域网、局域网、城域网等等)将电子设备102连接到其他设备;·用户界面模块123(图1c),其用于在显示器126或触敏显示器156上显示包括用户界面对象的用户界面;·控制应用程序132(图1c),其用于控制进程(例如,命中视图确定、线程管理和/或事件监视等);在一些实施例中,控制应用程序132包括运行时间应用程序;在其他实施例中,运行时间应用程序包括控制应用程序132;·事件递送系统122,在各种另选实施例中,该事件递送系统可在操作系统118内或在应用软件124中实现;然而在一些实施例中,事件递送系统122的一些方面可在操作系统118中实现,同时其他方面在应用软件124中实现;·应用软件124,其包括一个或多个软件应用程序(例如,图1c中的应用程序133-1、133-2和133-3,其中的每一个应用程序可以是下列中的一者:电子邮件应用程序、web浏览器应用程序、记事本应用程序、文本消息应用程序等),相应软件应用程序通常至少在执行期间具有指示相应软件应用程序及其组件(例如,手势识别器)的状态的应用程序状态;参见下文所述的应用程序内部状态321(图3d);以及·设备/全局内部状态134(图1c),其包括下列中的一者或多者:应用程序状态,该应用程序状态指示软件应用程序及其组件(例如,手势识别器和委托)的状态;显示状态,该显示状态指示哪些应用程序、视图或其他信息占据触敏显示器156或显示器126的各个区域;传感器状态,该包括传感器状态从设备的各种传感器116、输入设备128和/或触敏显示器156获得的信息;关于设备的位置和/或姿态的位置信息;以及其他状态。如本说明书和权利要求书中所用,术语“打开的应用程序”是指具有保持的状态信息(例如,作为设备/全局内部状态134和/或应用程序内部状态321的一部分(图3d))的软件应用程序。打开的应用程序是以下类型的应用程序中的任一个:·活动应用程序,该活动应用程序当前显示在显示器126或触敏显示器156上(或对应的应用程序视图当前显示在显示器上);·后台应用程序(或后台进程),该后台应用程序(或后台进程)当前未显示在显示器126或触敏显示器156上,但用于对应应用程序的一个或多个应用程序进程(例如,指令)正在由一个或多个处理器110处理(即,正在运行);·暂停的应用程序,该暂停的应用程序当前未运行,并且该应用程序被存储在易失性存储器(例如,存储器111的dram、sram、ddrram、或其他易失性随机存取固态存储器设备)中;和·休眠的应用程序,该休眠的应用程序未运行,并且该应用程序被存储在非易失性存储器(例如,存储器111的一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备、或其他非易失性固态存储设备)中。如本文所用,术语“关闭的应用程序”是指不具有保持的状态信息的软件应用程序(例如,关闭的应用程序的状态信息不被存储在设备的存储器中)。因此,关闭应用程序包括停止和/或移除应用程序的应用程序进程以及从设备的存储器移除应用程序的状态信息。一般来讲,当在第一应用程序中时打开第二应用程序不会关闭第一应用程序。当显示第二应用程序并且停止显示第一应用程序时,在为活动应用程序的第一应用程序被显示时,该第一应用程序可变成后台应用程序、暂停的应用程序或休眠的应用程序,但第一应用程序在其状态信息由该设备保持时仍然是打开的应用程序。上述所识别元素中的每一个元素可存储在先前提及的存储器设备中的一个或多个存储器设备中。上述所识别模块、应用程序或系统元素中的每一者对应于用于实施本文所述的功能的一组指令。这组指令可由一个或多个处理器(例如,一个或多个cpu110)执行。上述所识别的模块或程序(即,指令组)无需实现为独立的软件程序、过程或模块,并且因此这些模块的各种子组可在各种实施例中组合或以其他方式重新布置。在一些实施例中,存储器111可存储上述所识别的模块和数据结构的子组。此外,存储器111可存储上文未描述的另外的模块和数据结构。图2是根据本发明的一些实施例的示例性电子设备或装置(例如,设备102)的输入/输出处理堆栈200的示意图。设备的硬件(例如,电子电路系统)212位于输入/输出处理堆栈200的基本层级处。硬件212可包括各种硬件接口组件,诸如图1a和/或图1b中所示的组件。硬件212还可包括上述传感器116中的一个或多个传感器。输入/输出处理堆栈200的其他元素(202-210)中的至少一些是处理从硬件212接收的输入并生成通过硬件用户界面(例如,显示器、扬声器、设备振动致动器等中的一者或多者)呈现的各种输出的软件过程或软件过程的一部分。驱动程序或一组驱动程序210与硬件212通信。驱动程序210可接收并处理从硬件212接收的输入数据。核心操作系统(“os”)208可与一个或多个驱动程序210通信。核心os208可处理从一个或多个驱动程序210接收的原始输入数据。在一些实施例中,驱动程序210可视为核心os208的一部分。一组os应用程序编程界面(“osapi”)206是与核心os208通信的软件过程。在一些实施例中,api206被包括在设备的操作系统中,但位于核心os208之上的层级。api206被设计成能够由正在本文所论述的电子设备或装置上运行的应用程序使用。用户界面(ui)api204可利用osapi206。在设备上运行的应用软件(“应用程序”)202可利用uiapi204以便与用户通信。uiapi204可转而与较低层级元素通信,最终与各种用户界面硬件(例如,多点触摸显示器156)通信。在一些实施例中,应用软件202包括应用软件124(图1a)中的应用程序。虽然每层输入/输出处理堆栈200可利用其下方的层,但并不总是需要这样。例如,在一些实施例中,应用程序202可与osapi206直接通信。一般来说,位于osapi层206处或上方的层可能不直接访问核心os208、一个或多个驱动程序210、或硬件212,因为这些层被视为私有的。层202和uiapi204中的应用程序通常将调用指引到osapi206,osapi206继而访问层核心os208、一个或多个驱动程序210、以及硬件212。换种方式来讲,电子设备102的一个或多个硬件元素212以及在设备上运行的软件检测输入设备128中的一个或多个输入设备和/或触敏显示器156处的输入事件(其可对应于手势中的子事件),并且生成或更新由一组当前活动的事件识别器用于确定这些输入事件是否对应于将递送到应用程序124的事件并且何时对应于将递送到应用程序124的事件的各种数据结构(存储在设备102的存储器111中)。下文更详细地描述了事件识别方法、装置和计算机程序产品的实施例。图3a示出示例性视图分级结构300,在此示例中,该视图分级结构是在最外侧视图302中显示的搜索程序。最外侧视图302通常涵盖用户可与之直接交互的整个用户界面,并且包括从属视图,例如:·搜索结果面板304,其将搜索结果分组并且可竖直滚动;·搜索字段306,其接受文本输入;以及·主页行310,其将应用程序分组以便快速访问。在此示例中,每个从属视图包括较低层级的从属视图。在其他示例中,分级结构300中视图层级的数目在分级结构的不同分支中可能不同,其中一个或多个从属视图具有较低层级的从属视图,并且一个或多个其他从属视图不具有任何此类较低层级的从属视图。继续参见图3a所示的示例,搜索结果面板304针对每个搜索结果包含单独的从属视图305(从属于面板304)。在此处,该示例在称为地图视图305的从属视图中显示一个搜索结果。搜索字段306包括在本文中称为清除内容图标视图307的从属视图,当用户在视图307中的清除内容图标上执行特定动作(例如,单个触摸或轻击手势)时,该从属视图将清除搜索字段的内容。主页行310包括从属视图310-1、310-2、310-3和310-4,这些从属视图分别对应于联系人应用程序、电子邮件应用程序、web浏览器和ipod音乐界面。触摸子事件301-1在最外侧视图302中呈现。考虑到触摸子事件301-1的位置在搜索结果面板304和地图视图305两者上方,则触摸子事件也在那些视图上方分别呈现为301-2和301-3。触摸子事件的活跃参与的视图包括视图搜索结果面板304、地图视图305和最外侧视图302。下文结合图3b和图3c提供了关于子事件递送和活跃参与的视图的另外的信息。视图(和对应的编程层级)可以是嵌套的。换句话讲,一个视图可包括其他视图。因此,与第一视图相关联的一个或多个软件元素(例如,事件识别器)可包括或链接到与第一视图内的视图相关联的一个或多个软件元素。虽然一些视图可与应用程序相关联,但其他视图可与高层级os元素(诸如图形用户界面、窗口管理程序等)相关联。在一些实施例中,一些视图与其他os元素相关联。在一些实施例中,视图分级结构包括来自多个软件应用程序的视图。例如,视图分级结构可包括来自应用程序启动器(例如,主屏幕)的视图和来自web浏览器应用程序的视图(例如,包括网页内容的视图)。编程分级结构在分级结构中包括一个或多个软件元素或软件应用程序。为简化后续论述,通常将仅参考视图和视图分级结构,但必须理解,在一些实施例中,方法可借助具有多个编程层的编程分级结构和/或视图分级结构而运行。图3b和图3c示出与事件识别器有关的示例性方法和结构。图3b示出当事件处理程序与视图的分级结构内的特定视图相关联时用于事件处理的方法和数据结构。图3c示出当事件处理程序与编程层级的分级结构内的特定层级相关联时用于事件处理的方法和数据结构。事件识别器全局方法312和350分别包括命中视图确定模块314和命中层级确定模块352、活动事件识别器确定模块316和354以及子事件递送模块318和356。在一些实施例中,电子设备102包括下列中的一者或多者:事件识别器全局方法312和350。在一些实施例中,电子设备102包括下列中的一者或多者:命中视图确定模块314和命中层级确定模块352。在一些实施例中,电子设备102包括下列中的一者或多者:活动事件识别器确定模块316和354。在一些实施例中,电子设备102包括下列中的一者或多者:子事件递送模块318和356。在一些实施例中,这些方法和模块中的一个或多个方法和模块被包括在更少或更多的方法和模块中。例如,在一些实施例中,电子设备102包括命中视图/层级确定模块,该模块包括命中视图确定模块314和命中层级确定模块352的功能性。在一些实施例中,电子设备102包括活动事件识别器确定模块,该模块包括活动事件识别器确定模块316和354的功能性。命中视图确定模块314和命中层级确定模块352分别提供用于确定子事件已在一个或多个视图(例如,图3a中所示的示例性视图分级结构300,其具有三个主要分支)内何处发生的软件过程和/或编程分级结构中对应于该子事件的一个或多个软件元素(例如,图1c中的应用程序133中的一个或多个应用程序)。图3b的命中视图确定模块314接收与子事件有关的信息,例如,在最外侧视图302上、在搜索结果(地图视图305)和搜索结果面板视图304上表示为301-1的用户触摸。命中视图确定模块314将命中视图识别为分级结构中应处理该子事件的最低视图。在大多数情况下,命中视图是发起子事件(即,形成事件或潜在事件的子事件的序列中的第一子事件)在其中发生的最低层级视图。在一些实施例中,一旦识别命中视图,命中视图便将接收与识别的命中视图的同一触摸或输入源有关的所有子事件。在一些实施例中,一个或多个其他视图(例如,默认或预定义的视图)接收命中视图接收的子事件中的至少一些。在一些实施例中,图3c的命中层级确定模块352可利用类似过程。例如,在一些实施例中,命中层级确定模块352将命中层级识别为编程分级结构中应处理子事件的最低层级(或编程分级结构中的最低编程层级中的软件应用程序)。在一些实施例中,一旦识别命中层级,命中层级或命中层级中的软件应用程序便将接收与识别的命中层级的同一触摸或输入源有关的所有子事件。在一些实施例中,一个或多个其他层级或软件应用程序(例如,默认或预定义的软件应用程序)接收命中视图接收的子事件中的至少一些。事件识别器全局方法312和350的活动事件识别器确定模块316和354分别确定视图分级结构和/或编程分级结构内的哪个或哪些视图应接收子事件的特定的序列。图3a示出接收子事件301的一组示例性活动视图302、304和305。在图3a的示例中,活动事件识别器确定模块316将确定最外侧视图302、搜索结果面板304和地图视图305是活跃参与的视图,因为这些视图包括由子事件301表示的触摸的物理位置。应当注意,即使触摸子事件301完全局限于与地图视图305相关联的区域,搜索结果面板304和最外侧视图302也仍将保持在活跃参与的视图中,因为搜索结果面板304和最外侧视图302是地图视图305的上级。在一些实施例中,活动事件识别器确定模块316和354利用类似过程。在图3a的示例中,活动事件识别器确定模块350将确定地图应用程序是活跃参与的应用程序,因为地图应用程序的视图被显示和/或地图应用程序的视图包括由子事件301表示的触摸的物理位置。应当注意,即使触摸子事件301完全局限于与地图应用程序相关联的区域,编程分级结构中的其他应用程序可仍保持为活跃参与的应用程序(或活跃参与的编程层级中的应用程序)。子事件递送模块318将子事件递送到活跃参与的视图的事件识别器。使用图3a的示例,用户的触摸在分级结构的不同视图中由触摸标记301-1、301-2和301-3表示。在一些实施例中,表示此用户的触摸的子事件数据由子事件递送模块318递送到活跃参与的视图(即,顶部层级视图302、搜索结果面板304和地图视图305)处的事件识别器。此外,视图的事件识别器可接收在视图内开始的事件的后续子事件(例如,当初始子事件在视图内发生时)。换种方式来讲,视图可接收与在视图中开始的用户交互相关联的子事件,即使其在视图的外部继续。在一些实施例中,子事件递送模块356在类似于子事件递送模块318所采用过程的过程中将子事件递送到活跃参与的编程层级的事件识别器。例如,子事件递送模块356将子事件递送到活跃参与的应用程序的事件识别器。使用图3a的示例,用户的触摸301由子事件递送模块356递送到活跃参与的视图(例如,地图应用程序和编程分级结构中任何其他活跃参与的应用程序)处的事件识别器。在一些实施例中,默认或预定义的软件应用程序默认被包括在编程的分级结构中。在一些实施例中,针对每个活跃参与的事件识别器生成单独的事件识别器结构320或360并将该结构存储在设备的存储器中。事件识别器结构320和360通常分别包括事件识别器状态334,374(下文当参考图4a和图4b时更详细地论述)并且分别包括分别具有状态机340,380的事件识别器专用代码338,378。事件识别器结构320还包括视图分级结构参考336,同时事件识别器结构360包括编程分级结构参考376。特定事件识别器的每个实例恰好参考一个视图或编程层级。使用视图分级结构参考336或编程分级结构参考376(用于特定事件识别器)来确定哪个视图或编程层级以逻辑方式耦接至相应事件识别器。视图元数据341和层级元数据381可分别包括关于视图或层级的数据。视图或层级元数据可包括可能影响向事件识别器进行的子事件递送的以下属性的子集或超集:·停止属性342,382,其在针对视图或编程层级设置时阻止向与该视图或编程层级相关联的事件识别器以及其在视图或编程分级结构中的上级进行子事件递送;·跳过属性343,383,其在针对视图或编程层级设置时阻止向与该视图或编程层级相关联的事件识别器进行子事件递送,但允许向其在该视图或编程分级结构中的上级进行子事件递送;以及·非命中跳过属性344,384,其在针对视图设置时阻止子事件递送至与视图相关联的事件识别器,除非视图是命中视图。如上所述,命中视图确定模块314将命中视图(或在命中层级确定模块352的情况下,则为命中层级)识别为分级结构中应处理子事件的最低视图。事件识别器结构320和360可分别包括元数据322,362。在一些实施例中,元数据322,362包括指示事件递送系统应如何执行向活跃参与的事件识别器进行的子事件递送的可配置属性、标记和列表。在一些实施例中,元数据322,362可包括指示事件识别器可如何彼此交互的可配置属性、标记和列表。在一些实施例中,元数据322,362可包括指示子事件是否递送到视图或编程的分级结构中的不同层级的可配置属性、标记和列表。在一些实施例中,事件识别器元数据322,362和视图或层级元数据(分别为341,381)的组合均用于配置事件递送系统以:a)执行向活跃参与的事件识别器进行的子事件递送,b)指示事件识别器可如何彼此交互,以及c)指示子事件是否并且何时递送到视图或编程分级结构中的各个层级。应当注意,在一些实施例中,相应事件识别器向其相应目标335,375发送事件识别动作333,373,如由事件识别器的结构320,360的字段所指定。向目标发送动作不同于向相应命中视图或层级发送(和延期发送)子事件。在对应事件识别器的相应事件识别器结构320,360中存储的元数据属性包括下列中的一者或多者:·排他性标记324,364,其在针对事件识别器设置时指示在由事件识别器识别事件时,事件递送系统应停止向活跃参与的视图或编程层级的任何其他事件识别器(例外列表326,366中列出的任何其他事件识别器除外)递送子事件。当子事件的接收导致特定事件识别器进入排他状态(如由其对应的排他性标记324或364所指示)时,后续子事件仅递送到处于排他状态的事件识别器(以及例外列表326,366中列出的任何其他事件识别器)。·排他性例外列表326,366。当针对相应事件识别器包括在事件识别器结构320,360中时,此列表326,366指示即使在相应事件识别器进入排他性状态之后也继续接收子事件的一组事件识别器(如果有的话)。例如,如果单击事件的事件识别器进入排他状态并且当前参与的视图包括双击事件的事件识别器,则列表320,360将列出双击事件识别器,以使得即使在检测到单击事件后也可识别双击事件。因此,排他性例外列表326,366允许事件识别器识别共享子事件的共用序列的不同事件,例如,单击事件识别并不妨碍由其他事件识别器对双击或三击事件的后续识别。·等候列表327,367。当包括在相应事件识别器的事件识别器结构320,360中时,此列表327,367指示在相应事件识别器可识别相应事件之前必须进入事件不可能状态或事件取消状态的一组事件识别器(如果有的话)。实际上,所列出的事件识别器比具有等候列表327,367的事件识别器具有识别事件的较高优先级。·延迟触摸开始标记328,368,其在针对事件识别器设置时导致事件识别器延迟向事件识别器的相应命中视图或层级发送子事件(包括触摸开始或手指向下子事件和后续事件),直到确定子事件的序列不对应于此事件识别器的事件类型之后。此标记可用于在识别手势的情况下阻止命中视图或层级曾经看见这些子事件中的任一个子事件。当事件识别器未能识别事件时,触摸开始子事件(和后续触摸结束子事件)可递送到命中视图或层级。在一个示例中,将此类子事件递送到命中视图或层级导致用户界面暂时突出显示对象,而不调用与对象相关联的动作。·延迟触摸结束标记330,370,其在针对事件识别器设置时导致事件识别器延迟向事件识别器的相应命中视图或层级发送子事件(例如,触摸结束子事件),直到确定子事件的序列不对应于此事件识别器的事件类型为止。这可用于阻止命中视图或层级作用于触摸结束子事件,以防手势稍后被识别。只要不发送触摸结束子事件,取消的触摸便可发送到命中视图或层级。如果识别事件,则执行应用程序的对应动作,并且触摸结束子事件递送到命中视图或层级。·触摸取消标记332,372,其在针对事件识别器设置时,当确定子事件的序列不对应于此事件识别器的事件类型时导致事件识别器向事件识别器的相应命中视图或命中层级发送触摸或输入取消。发送到命中视图或层级的触摸或输入取消指示先前子事件(例如,触摸开始子事件)已被取消。触摸或输入取消可导致输入源处理程序的状态(参见图4b)以进入输入序列已取消状态460(如下文所述)。在一些实施例中,例外列表326,366还可由非排他事件识别器使用。具体地讲,当非排他事件识别器识别事件时,后续子事件不递送到与当前活动的视图相关联的排他事件识别器,除了识别事件的事件识别器的例外状况列表326,366中列出的那些排他事件识别器之外。在一些实施例中,事件识别器可被配置为结合延迟触摸结束标记利用触摸取消标记332,372以阻止不想要的子事件递送到命中视图。例如,单击手势和双击手势的前半部分的定义相同。一旦单击事件识别器成功识别单击,不期望的动作便可能发生。如果设置延迟触摸结束标记,则阻止单击事件识别器向命中视图发送子事件,直到识别出单击事件。另外,单击事件识别器的等候列表327,367可识别双击事件识别器,从而阻止单击事件识别器识别单击,直到双击事件识别器已进入事件不可能状态。当执行双击手势时,等候列表327,367的使用避免了与单击相关联的动作的执行。相反,响应于双击事件的识别,将仅执行与双击相关联的动作。具体转到触敏表面上的用户触摸的形式,如上所述,触摸和用户手势可包括无需为瞬时性的动作,例如,触摸可包括将手指抵靠显示器移动或保持一段时间的动作。然而,触摸数据结构定义触摸在特定时间的状态(或者,更一般地,任何输入源的状态)。因此,存储在触摸数据结构中的值可能在单个触摸的过程中变化,从而使单个触摸在不同时间点的状态能够传达到应用程序。每个触摸数据结构可包括多个字段。在一些实施例中,触摸数据结构可包括对应于至少图3b中的触摸专用字段339或图3c中的输入源专用字段379的数据。例如,图3b中的“视图的第一触摸”字段345(图3c中的“层级的第一触摸”385)可指示触摸数据结构是否定义特定视图的第一触摸(因为实施视图的软件元素被具现化)。“时间戳”字段346,386可指示与触摸数据结构有关的特定时间。任选地,“信息”字段347,387可用于指示触摸是否为基本手势。例如,“信息”字段347,387可指示触摸是否为轻扫,并且如果是轻扫,轻扫沿哪个方向取向。轻扫是一个或多个手指沿直线方向的快速拖动。api具体实施(如下文所述)可确定触摸是否为轻扫并且通过“信息”字段347,387将该信息传递到应用程序,从而减少在触摸是轻扫的情况下应用程序必须进行的一些数据处理。任选地,图3b中的“轻击计数”字段348(图3c中的“事件计数”字段388)可指示在初始触摸的位置处已连续执行多少次轻击。轻击可定义为抵靠触敏面板特定位置处的快速按下并抬起手指。如果手指在面板的同一位置处紧接着再次按下并释放,则可发生多个连续轻击。事件递送系统122可对轻击进行计数并且通过“轻击计数”字段348将此信息转发到应用程序。同一位置处的多次轻击有时被视为能够触摸界面的有用且容易记住的命令。因此,通过对轻击进行计数,事件递送系统122可再次减少来自应用程序的一些数据处理。“时长”字段349,389可指示基于触摸的手势当前所处的特定时长。时长字段349,389可具有各种值,诸如“触摸时长开始”,其可指示触摸数据结构定义尚未被先前触摸数据结构参考的新触摸。“触摸时长移动”值可指示所定义的触摸已从先前位置移动。“触摸时长静止”值可指示触摸已停留在同一位置。“触摸时长结束”值可指示触摸已结束(例如,用户已从多点触摸显示器的表面抬起他/她的手指)。“触摸时长取消”值可指示触摸已由设备取消。已取消触摸可以是不必由用户结束但设备已确定忽略的触摸。例如,设备可确定触摸非故意地产生(即,由于将能够多点触摸的便携式设备放置在某人的口袋中),并且出于该原因而忽略触摸。“时长字段”的每个值349,389可以是整数。因此,每个触摸数据结构可定义在特定时间相应触摸(或其他输入源)正发生什么(例如,触摸是否静止、移动等)以及与该触摸相关联的其他信息(诸如位置)。因此,每个触摸数据结构可定义特定触摸在特定时刻的状态。参考相同时间的一个或多个触摸数据结构可添加到触摸事件数据结构中,该触摸事件数据结构可定义特定视图在某一时刻接收的所有触摸的状态(如上所述,一些触摸数据结构可还参考已结束且不再被接收的触摸)。多个触摸事件数据结构可发送到随时间推移实施视图的软件,以便向软件提供描述在视图中发生的触摸的连续信息。图3d是示出根据一些实施例的用于事件处理的示例性组件(例如,事件处理组件390)的框图。在一些实施例中,存储器111(图1a)包括事件识别器全局方法312和一个或多个应用程序(例如,133-1至133-3)。在一些实施例中,事件识别器全局方法312包括事件监视器311、命中视图确定模块314、活动事件识别器确定模块316和事件分配器模块315。在一些实施例中,事件识别器全局方法312被定位在事件递送系统122(图1a)内。在一些实施例中,事件识别器全局方法312在操作系统118(图1a)中实现。另选地,事件识别器全局方法312在相应的应用程序133-1中实现。在其他实施例中,事件识别器全局方法312实现为独立模块,或存储在存储器111中的另一个模块(例如,接触/运动模块(未示出))的一部分。事件监视器311从一个或多个传感器116、触敏显示器156和/或一个或多个输入设备128接收事件信息。事件信息包括关于事件(例如,触敏显示器156上的用户触摸,作为多点触摸手势或设备102的运动的一部分)和/或子事件(例如,触摸在触敏显示器156上的移动)的信息。例如,触摸事件的事件信息包括下列中的一者或多者:触摸的位置和时间戳。类似地,轻扫事件的事件信息包括下列中的两者或更多者:轻扫的位置、时间戳、方向和速度。传感器116、触敏显示器156和输入设备128直接或通过外围设备接口将信息事件和子事件信息传输到事件监视器311,该事件监视器检索并存储事件信息。传感器116包括下列中的一者或多者:接近传感器、加速计、陀螺仪、麦克风和视频相机。在一些实施例中,传感器116还包括输入设备128和/或触敏显示器156。在一些实施例中,事件监视器311以预先确定的间隔将请求发送至传感器116和/或外围设备接口。作为响应,传感器116和/或外围设备接口传输事件信息。在其他实施例中,传感器116和外围设备接口仅在存在有意义事件(例如,接收高于预先确定的噪声阈值的输入和/或接收到超过预先确定的持续时间的输入)时传输事件信息。事件监视器311接收事件信息并将事件信息转发到事件分配器模块315。在一些实施例中,事件监视器311确定向其递送事件信息的一个或多个相应应用程序(例如,133-1)。在一些实施例中,事件监视器311还确定向其递送事件信息的一个或多个相应应用程序的一个或多个相应应用程序视图317。在一些实施例中,事件识别器全局方法312还包括命中视图确定模块314和/或活动事件识别器确定模块316。当触敏显示器156显示多于一个视图时,命中视图确定模块314(如果存在)提供用于确定事件或子事件已在一个或多个视图内的何处发生的软件过程。视图由用户能在显示器上看到的控件和其他元素构成。与相应应用程序(例如,133-1)相关联的用户界面的另一方面是一组视图317,本文中有时称为应用程序视图或用户界面窗口,在其中显示信息并且发生基于触摸的手势。在其中检测到触摸的(相应应用程序的)应用程序视图可对应于应用程序的视图分级结构内的特定视图。例如,在其中检测到触摸的最低层级视图可称为命中视图,并且被识别为正确输入的那组事件可至少部分地基于开始基于触摸的手势的初始触摸的命中视图来确定。命中视图确定模块314接收与事件和/或子事件有关的信息。当应用程序具有按分级结构组织的多个视图时,命中视图确定模块314将命中视图识别为分级结构中应处理事件或子事件的最低视图。在大多数情况下,命中视图是发起事件或子事件(即,形成手势的事件和/或子事件的序列中的第一事件或子事件)在其中发生的最低层级视图。一旦命中视图由命中视图确定模块所识别,命中视图通常接收与被识别为命中视图所针对的同一触摸或输入源有关的所有事件和/或子事件。然而,命中视图并不总是接收与被识别为命中视图所针对的同一触摸或输入源有关的所有事件和/或子事件的唯一视图。换句话说,在一些实施例中,另一个应用程序(例如,133-2)或同一应用程序的另一个视图也接收与同一触摸或输入源有关的事件和/或子事件的至少子组,而不管是否已针对触摸或输入源确定命中视图。活动事件识别器确定模块316确定视图分级结构内的哪个或哪些视图应接收事件和/或子事件的特定的序列。在一些应用程序上下文中,活动事件识别器确定模块316确定仅命中视图应接收事件和/或子事件的特定的序列。在其他应用程序上下文中,活动事件识别器确定模块316确定包括事件或子事件的物理位置的所有视图是活跃参与的视图,并且因此确定所有活跃参与的视图应接收事件和/或子事件的特定的序列。在其他应用程序上下文中,即使触摸事件和/或子事件完全局限于与一个特定视图相关联的区域,在分级结构中较高的视图仍保持为活跃参与的视图,并且因此在分级结构中较高的视图应接收事件和/或子事件的特定的序列。除此之外或另选地,活动事件识别器确定模块316确定编程分级结构中的哪个或哪些应用程序应接收事件和/或子事件的特定的序列。因此,在一些实施例中,活动事件识别器确定模块316确定仅编程的分级结构中的相应应用程序应接收事件和/或子事件的特定的序列。在一些实施例中,活动事件识别器确定模块316确定编程分级结构中的多个应用程序应接收事件和/或子事件的特定的序列。事件分配器模块315将事件信息分配到事件识别器(本文中也称为“手势识别器”)(例如,事件识别器325-1)。在包括活动事件识别器确定模块316的实施例中,事件分配器模块315将事件信息递送到由活动事件识别器确定模块316确定的事件识别器。在一些实施例中,事件分配器模块315在事件队列中存储事件信息,该事件信息由相应事件识别器325(或相应事件识别器325中的事件接收器3031)检索。在一些实施例中,相应应用程序(例如,133-1)包括应用程序内部状态321,该应用程序内部状态指示当应用程序是活动的或正在执行时显示在触敏显示器156上的当前一个或多个应用程序视图。在一些实施例中,设备/全局内部状态134(图1c)由事件识别器全局方法312用于确定哪个或哪些应用程序当前是活动的,并且应用程序内部状态321由事件识别器全局方法312用于确定向其递送事件信息的应用程序视图317。在一些实施例中,应用程序内部状态321包括附加信息,诸如以下各项中的一者或多者:当应用程序133-1恢复执行时待使用的恢复信息、指示正由应用程序133-1显示的信息或准备好用于由应用程序133-1显示的信息的用户界面状态信息、用于使用户能够返回到应用程序133-1的前一状态或视图的状态队列、以及用户采取的先前动作的重复/撤销队列。在一些实施例中,应用程序内部状态321还包括上下文信息/文本和元数据323。在一些实施例中,应用程序133-1包括一个或多个应用程序视图317,其中的每一者具有用于处理在应用程序的用户界面的相应视图内发生的触摸事件的对应指令(例如,对应事件处理程序319)。应用程序133-1的至少一个应用程序视图317包括一个或多个事件识别器325。通常,相应应用程序视图317包括多个事件识别器325。在其他实施例中,事件识别器325中的一个或多个事件识别器是独立模块的一部分,独立模块诸如用户界面工具包(未示出)或应用程序133-1从中继承方法和其他属性的更高层级的对象。在一些实施例中,相应应用程序视图317还包括下列中的一者或多者:数据更新器、对象更新器、gui更新器和/或所接收的事件数据。相应应用程序(例如,133-1)还包括一个或多个事件处理程序319。通常,相应应用程序(例如133-1)包括多个事件处理程序319。相应事件识别器325-1从事件分配器模块315接收事件信息(直接地或间接地通过应用程序133-1),并且从事件信息识别事件。事件识别器325-1包括事件接收器3031和事件比较器3033。事件信息包括关于事件(例如,触摸)或子事件(例如,触摸移动)的信息。根据事件或子事件,事件信息还包括另外的信息,诸如事件或子事件的位置。当事件或子事件涉及触摸的运动时,事件信息可还包括子事件的速度和方向。在一些实施例中,事件包括设备从一个取向到另一个取向的旋转(例如,从纵向取向到横向取向,或反之亦然),并且事件信息包括关于设备的当前取向(也称为设备姿态)的对应信息。事件比较器3033将事件信息与一个或多个预定义的手势定义(本文中也称为“事件定义”)进行比较,并且基于比较,确定事件或子事件,或者确定或更新事件或子事件的状态。在一些实施例中,事件比较器3033包括一个或多个手势定义3035(如上所述,本文中也称为“事件定义”)。手势定义3035包含手势的定义(例如,预定义的事件和/或子事件的序列),例如手势1(3037-1)、手势2(3037-2)以及其他手势。在一些实施例中,手势定义3035中的子事件包括例如触摸开始、触摸结束、触摸移动、触摸取消和多点触摸。在一个示例中,手势1(3037-1)的定义是所显示的对象上的双击。例如,双击包括在所显示的对象上的预先确定时长的手势的第一触摸(触摸开始)、下一个预先确定时长的手势的第一抬离(触摸结束)、在所显示的对象上的后续预先确定时长的手势的第二触摸(触摸开始)以及最终预先确定时长的手势的第二抬离(触摸结束)。在另一个示例中,手势2(3037-2)的定义包括在所显示的对象上的拖动。例如,该拖动包括在所显示的对象上的触摸(或接触)、触摸在触敏显示器156上的运动以及触摸的抬离(触摸结束)。在一些实施例中,事件识别器325-1还包括事件递送3039的信息。事件递送3039的信息包括对对应事件处理程序319的参考。任选地,事件递送3039的信息包括动作目标对。在一些实施例中,响应于对手势(或手势的一部分)的识别,事件信息(例如,一个或多个动作消息)被发送到由一个或多个动作目标对识别的一个或多个目标。在其他实施例中,响应于对手势(手势的一部分)的识别,动作目标对被激活。在一些实施例中,手势定义3035包括相应用户界面对象的手势的定义。在一些实施例中,事件比较器3033执行命中测试以确定哪个用户界面对象与子事件相关联。例如,在其中三个用户界面对象显示在触敏显示器156上的应用程序视图中,当在触敏显示器156上检测到触摸时,事件比较器3033执行命中测试以确定这三个用户界面对象(如果有的话)中的哪一个与触摸(事件)相关联。如果每个所显示的对象与相应事件处理程序319相关联,则事件比较器3033使用命中测试的结果来确定哪个事件处理程序319应当被激活。例如,事件比较器3033选择与事件和触发命中测试的对象相关联的事件处理程序319。在一些实施例中,相应手势的相应手势定义3037还包括延迟的动作,延迟的动作延迟事件信息的递送,直到已确定事件和/或子事件的序列是对应于还是不对应于事件识别器的事件类型之后。当相应事件识别器325-1确定一系列事件和/或子事件不与手势定义3035中的任何事件匹配时,相应事件识别器325-1进入事件失败状态,在此之后相应事件识别器325-1忽视基于触摸的手势的后续事件和/或子事件。在这种情况下,命中视图保持活动的其他事件识别器(如果有的话)继续跟踪和处理持续的基于触摸的手势的事件和/或子事件。在一些实施例中,当未保持命中视图的任何事件识别器时,事件信息被发送到视图分级结构中的较高视图中的一个或多个事件识别器。另选地,当未保持命中视图的任何事件识别器时,忽视事件信息。在一些实施例中,当未保持视图分级结构中的视图的任何事件识别器时,事件信息被发送到编程的分级结构中的较高编程层级中的一个或多个事件识别器。另选地,当未保持视图分级结构中的视图的任何事件识别器时,忽视事件信息。在一些实施例中,相应事件识别器325-1包括事件识别器状态334。事件识别器状态334包括相应事件识别器325-1的状态。下文结合图4a至图4b和图5a至图5c更详细地描述了事件识别器状态的示例。在一些实施例中,事件识别器状态334包括识别器元数据和属性3043。在一些实施例中,识别器元数据和属性3043包括下列中的一者或多者:a)指示事件递送系统应如何实施向活跃参与的事件识别器进行的事件和/或子事件递送的可配置属性、标记和/或列表;b)指示事件识别器如何彼此交互的可配置属性、标记和/或列表;c)指示事件识别器如何接收事件信息的可配置属性、标记和/或列表;d)指示事件识别器可如何识别手势的可配置属性、标记和/或列表;e)指示事件和/或子事件是否递送到视图分级结构中的不同层级的可配置属性、标记和/或列表;以及f)对对应事件处理程序319的参考。在一些实施例中,事件识别器状态334包括事件/触摸元数据3045。事件/触摸元数据3045包括关于已检测到且对应于手势定义3035中的相应手势定义3037的相应事件/触摸的事件/触摸信息。事件/触摸信息包括下列中的一者或多者:相应事件/触摸的位置、时间戳、速度、方向、距离、比例(或比例变化)和角度(或角度变化)。在一些实施例中,当手势的一个或多个特定事件和/或子事件被识别时,相应事件识别器325激活与相应事件识别器325相关联的事件处理程序319。在一些实施例中,相应事件识别器325将与事件相关联的事件信息递送到事件处理程序319。事件处理程序319在被激活时实施下列中的一者或多者:创建和/或更新数据,创建并更新对象,以及准备显示信息并发送该信息以供显示在显示器126或触敏显示器156上。在一些实施例中,相应应用程序视图317-2包括视图元数据341。如上文结合图3b所述,视图元数据341包括关于视图的数据。任选地,视图元数据341包括下列中的一者或多者:停止属性342、跳过属性343、非命中跳过属性344和其他视图元数据329。在一些实施例中,视图分级结构内第一活跃参与的视图可被配置为阻止相应子事件向与第一活跃参与的视图相关联的事件识别器的递送。此行为可实现跳过属性343。当针对应用程序视图设置跳过属性时,仍针对与视图分级结构中的其他活跃参与的视图相关联的事件识别器执行相应子事件的递送。另选地,视图分级结构内的第一活跃参与的视图可被配置为阻止相应子事件向与该第一活跃参与的视图相关联的事件识别器的递送,除非第一活跃参与的视图是命中视图。此行为可实现有条件的非命中跳过属性344。在一些实施例中,视图分级结构内的第二活跃参与的视图被配置为阻止相应子事件向与该第二活跃参与的视图相关联的事件识别器的递送以及向与该第二活跃参与的视图的上级相关联的事件识别器的递送。此行为可实现停止属性342。图3e是示出根据一些实施例的手势识别器(例如,事件处理组件390)的示例性类和实例的框图。软件应用程序(例如,应用程序133-1)具有一个或多个事件识别器3040。在一些实施例中,相应事件识别器(例如,3040-2)为事件识别器类。相应事件识别器(例如,3040-2)包括事件识别器专用代码338(例如,定义事件识别器的操作的一组指令)和状态机340。在一些实施例中,软件应用程序(例如,应用程序133-1)的应用程序状态321包括事件识别器的实例。事件识别器的每个实例是具有状态(例如,事件识别器状态334)的对象。通过执行对应事件识别器专用代码(例如,338)并更新或维持事件识别器实例3047的状态334来实现相应事件识别器实例的“执行”。事件识别器实例3047的状态334包括事件识别器实例的状态机340的状态3038。在一些实施例中,应用程序状态321包括多个事件识别器实例3047。相应事件识别器实例3047通常对应于已绑定(也称为“附加”)到应用程序的视图中的事件识别器。在一些实施例中,一个或多个事件识别器实例3047绑定到编程分级结构中的相应应用程序,而不参考相应应用程序的任何特定视图。在一些实施例中,应用程序状态321包括相应事件识别器(例如,3040-2)的多个实例(例如,3047-1至3047-l)。在一些实施例中,应用程序状态321包括多个事件识别器(例如,3040-1至3040-r)的实例3047。在一些实施例中,手势识别器3040的相应实例(例如,3047-2)包括事件识别器状态334。如上所述,在一些实施例中,事件识别器状态334包括识别器元数据和属性3043以及事件/触摸元数据3045。在一些实施例中,事件识别器状态334还包括一个或多个视图分级结构参考336,其指示手势识别器3040-2的相应实例3047-2附加到哪个视图。在一些实施例中,识别器元数据和属性3043包括下列各项或其子集或超集:·排他性标记324;·排他性例外列表326;·等候列表327;·延迟触摸开始标记328;·延迟触摸结束标记330;以及·触摸取消标记332。在一些实施例中,一个或多个事件识别器可适于延迟递送子事件的序列中的一个或多个子事件,直到事件识别器识别出事件之后。此行为反映出延迟的事件。例如,在可多次轻击手势的视图中考虑单击手势。在这种情况下,轻击事件变成“轻击+延迟”识别器。本质上,当事件识别器实现此行为时,该事件识别器将延迟事件识别,直到其确定子事件的序列实际上确实对应于其事件定义。当接收方视图不能适当地响应于已取消事件时,此行为可能是合适的。在一些实施例中,事件识别器将延迟将其事件识别状态更新到其相应活跃参与的视图,直到事件识别器确定子事件的序列不对应于其事件定义。提供延迟触摸开始标记328、延迟触摸结束标记330和触摸取消标记332以调整子事件递送技术以及针对特定需求的事件识别器和视图状态信息更新。在一些实施例中,识别器元数据和属性3043包括下列各项或其子集或超集:·状态机状态/时长3038,其指示相应事件识别器实例(例如,3047-2)的状态机(例如,340)的状态;状态机状态/时长3038可具有多种状态值,诸如“事件可能”、“事件已识别”、“事件失败”等等,如下文所述;另选地或除此之外,状态机状态/时长3038可具有多种时长值,例如“触摸时长开始”,其可指示触摸数据结构定义尚未被先前触摸数据结构参考的新触摸;“触摸时长移动”值可指示触摸被定义为已从先前位置移动;“触摸时长静止”值可指示触摸已停留在同一位置;“触摸时长结束”值可指示触摸已结束(例如,用户已从多点触摸显示器的表面抬起他/她的手指);“触摸时长取消”值可指示触摸已由设备取消;已取消触摸可以是不必由用户结束、但设备已确定忽略的触摸;例如,设备可确定触摸非故意地产生(即,由于将能够多点触摸的便携式设备放置在某人的口袋中),并且出于该原因而忽略触摸;状态机状态/时长3038的每个值可以是整数(本文中称为“手势识别器状态值”);·一个或多个动作目标对3051,其中每一对可识别相应事件识别器实例响应于将事件或触摸识别为手势或手势的一部分而向其发送所识别动作消息的目标;·委托3053,当委托被指派给相应事件识别器实例时,其是对应委托的参考;当委托未被指派给相应事件识别器实例时,委托346包含空值;以及·启用属性3055,其指示是否启用相应事件识别器实例;在一些实施例中,当未启用(例如,禁用)相应事件识别器实例时,该相应事件识别器实例不会处理事件或触摸。每个触摸数据结构可包括多个条目。在一些实施例中,触摸数据结构可包括对应于至少事件/触摸元数据3045中的触摸专用条目的数据,诸如下列条目或者其子集或超集:·“视图的第一触摸”条目345;·“每次触摸的信息”条目3051,其包括“时间戳”信息,“时间戳”信息指示与触摸数据结构有关的特定时间(例如,触摸的时间);任选地,“每一触摸信息”条目3051包括其他信息,诸如对应触摸的位置;以及·任选的“轻击计数”条目348。因此,每个触摸数据结构可定义在特定时间相应触摸(或其他输入源)正发生什么(例如,触摸是否静止、移动等)以及与该触摸相关联的其他信息(诸如位置)。因此,每个触摸数据结构可定义特定触摸在特定时刻的状态。参考相同时间的一个或多个触摸数据结构可添加到触摸事件数据结构中,该触摸事件数据结构可定义特定视图在某一时刻接收的所有触摸的状态(如上所述,一些触摸数据结构可还参考已结束且不再被接收的触摸)。多个触摸事件数据结构可发送到随时间推移实施视图的软件,以便向软件提供描述在视图中发生的触摸的连续信息。处理复杂的基于触摸的手势(任选地包括多点触摸手势)的能力可增加各种软件应用程序的复杂性。在一些情况下,这种另外的复杂性可能是实现高级和期望的界面特征所必需的。例如,游戏可能需要用于处理在不同视图中发生的多个同时触摸的能力,因为游戏通常需要同时按多个按钮,或在触敏表面上将加速计数据与触摸结合。然而,一些较简单的应用程序和/或视图不需要高级界面特征。例如,简单软按钮(即,显示在触敏显示器上的按钮)可利用单个触摸、而不是多点触摸功能性实现令人满意的操作。在这些情况下,基础os可向与旨在可仅由单个触摸(例如,软按钮上的单个触摸或轻击)操作的视图相关联的软件组件发送不必要或过多触摸数据(例如,多点触摸数据)。由于软件组件可能需要处理此数据,因此可能需要具有处理多个触摸的软件应用程序的全部复杂性,即使其与仅涉及单个触摸的视图相关联。这样可增加设备的软件开发的成本,因为在传统上易于在鼠标界面环境中编程的软件组件(即,各种按钮等)在多点触摸环境中可能复杂得多。为降低识别复杂的基于触摸的手势的复杂性,根据一些实施例,可使用委托来控制事件识别器的行为。如下文所述,委托可确定例如对应事件识别器(或手势识别器)是否可接收事件(例如,触摸)信息;对应事件识别器(或手势识别器)是否可从状态机的初始状态(例如,事件可能状态)转变为另一个状态;和/或对应事件识别器(或手势识别器)是否可同时将事件(例如,触摸)识别为对应手势,而不阻止其他一个或多个事件识别器(或一个或多个手势识别器)识别事件或受到识别事件的其他一个或多个事件识别器(或一个或多个手势识别器)的阻止。然而,应当理解,前面关于评估并处理触敏表面上的用户触摸的复杂性的讨论也应用于所有形式的利用输入设备128的到操作电子设备102的用户输入(并非它们中的所有都是在触摸屏上发起的),例如协调鼠标移动和鼠标按钮按压(具有或没有单个或多个键盘按压或保持)、设备旋转或其他移动、触摸板上的用户移动(诸如轻击、拖动、滚动等)、触控笔输入、口头指令、检测到的眼睛移动、生物计量输入、检测到的用户生理变化和/或它们的任何组合,这些用户输入可用作对应于定义待识别事件的事件和/或子事件的输入。转到事件信息流,图3f至图3i是示出根据一些实施例的事件信息流的框图。在图3f中,事件分配器模块315(例如,在操作系统118或应用软件124中)接收事件信息,并将事件信息发送到一个或多个应用程序(例如,133-1和133-2)。在一些实施例中,应用程序133-1包括视图分级结构506中的多个视图(例如,对应于视图317的508、510和512,图3d)和所述多个视图中的多个手势识别器(516-1至516-3)。应用程序133-1还包括一个或多个手势处理程序550,对应于目标动作对(例如,552-1和552-2)中的目标值。在一些实施例中,事件分配器模块315从命中视图确定模块314接收命中视图信息并将事件信息发送到命中视图(例如,512)或附加到命中视图的事件识别器(例如,516-1和516-2)。除此之外或另选地,事件分配器模块315从命中层级确定模块352接收命中层级信息并将事件信息发送到命中层级中的应用程序(例如,133-1和133-2)或命中层级应用程序中的一个或多个事件识别器(例如,516-4)。在一些实施例中,接收事件信息的应用程序中的一个应用程序是默认应用程序(例如,133-2可以是默认应用程序)。在一些实施例中,每个接收应用程序中仅一个子组的手势识别器被允许(或被配置为)接收事件信息。例如,应用程序133-1中的手势识别器516-3不接收事件信息。接收事件信息的手势识别器在本文中称为接收手势识别器。在图3f中,接收手势识别器516-1、516-2和516-4接收事件信息,并将所接收事件信息与接收手势识别器中的相应手势定义3037(图3d)进行比较。在图3f中,手势识别器516-1和516-4具有与所接收事件信息匹配的相应手势定义,并且将相应动作消息(例如,518-1和518-2)发送到对应手势处理程序(例如,552-1和552-3)。图3g示出类似于图3f中所示实施例的实施例。图3f与图3g之间的差别包括,手势识别器516-1的操作取决于手势识别器516-2的状态。例如,在一些实施例中,手势识别器516-1包括等候列表327,367(图3b至图3c)。在一些实施例中,手势识别器516-1的等候列表327,367指示手势识别器516-2必须在手势识别器516-1可识别相应事件之前进入事件不可能状态或事件取消状态。例如,在一些实施例中,手势识别器516-1被配置为识别单击手势,并且手势识别器516-2被配置为识别双击手势。手势识别器516-1仅可在手势识别器516-2未能识别双击手势(并且因此,进入事件不可能状态)之后识别单击手势。这在下文中结合图5c进行描述。图3h示出类似于图3g中所示实施例的实施例。图3g与图3h之间的差别包括,手势识别器516-1的操作取决于代理手势识别器522-1的状态。代理手势识别器(例如,522-1)具有对应于与代理手势识别器不在同一视图中的另一个手势识别器(例如,非代理手势识别器516-4)的状态的状态。因此,例如,当手势识别器516-4处于事件可能状态时,代理手势识别器522-1进入事件可能状态。又如,当手势识别器516-4处于事件不可能状态时,代理手势识别器522-1进入事件不可能状态。当手势识别器516-4处于事件取消状态时,代理手势识别器522-1进入事件取消状态。在图3h中,代理手势识别器522-1和非代理手势识别器516-4在不同的应用程序(例如,应用程序133-1和133-2)中。如上文结合图3g所述,在一些实施例中,手势识别器516-1包括等候列表327,367(图3b至图3c)。在图3h所示的示例中,手势识别器516-1的等候列表327,367指示代理手势识别器522-1必须在手势识别器516-1可识别相应事件之前进入事件不可能状态或事件取消状态。在应用程序133-1中提供代理手势识别器522-1便不再需要相应手势识别器的等候列表识别与相应手势识别器不在同一视图中的一个或多个手势识别器,所述代理手势识别器具有对应于不同应用程序133-2中的非代理手势识别器516-4的状态(并且在此示例中,与该状态相同)的状态。因此,相应手势识别器的等候列表仅识别与相应手势识别器在同一视图中的一个或多个手势识别器(例如,代理手势识别器),这简化了等候列表的结构。另外,根据不在同一视图或同一应用程序中的另一个手势识别器的状态来执行手势识别器的操作可能缓慢、低效并且复杂。通过使用代理手势识别器,相应手势识别器无需监视与相应手势识别器不在同一视图中的手势识别器的状态,从而提高相应手势识别器和包括相应手势识别器的软件应用程序的性能。在一些实施例中,手势识别器516-1被配置为识别单击手势,并且手势识别器516-4被配置为识别双击手势。手势识别器516-1仅在代理手势识别器522-1进入事件不可能状态之后识别单击手势,因为手势识别器516-4未能识别双击手势(并且因此,进入事件不可能状态)。在一些其他实施例中,手势识别器516-1被配置为识别轻扫手势,并且手势识别器516-4被配置为识别边缘轻扫手势(源自触敏表面边缘的轻扫手势)。手势识别器516-1仅在代理手势识别器522-1进入事件不可能状态之后识别轻扫手势,因为代理手势识别器522-1进入事件不可能状态,因为手势识别器516-4未能识别边缘轻扫手势(并且因此,进入事件不可能状态)。在一些实施例中,当手势识别器516-4将用户输入识别为边缘轻扫手势时,手势识别器516-4进入事件已识别状态,并且代理手势识别器522-1也进入事件已识别状态。这样,由于代理手势识别器522-1不处于事件不可能状态或事件取消状态,因此手势识别器516-1不会将用户输入识别为轻扫手势。如图3h中所示,事件分配器模块315通常不向代理手势识别器522-1发送事件信息。另外,代理手势识别器通常被配置为不接收事件信息。在一些实施例中,当事件分配器模块315向代理手势识别器发送事件信息并且代理手势识别器接收事件信息时,代理手势识别器忽略事件信息(例如,响应于事件信息而不直接采取动作)。这是因为代理手势识别器通常不会被配置为处理事件信息。相反,代理手势识别器通常被配置为反映非代理手势识别器(例如,被配置为接收并处理事件信息的非代理手势识别器)的状态。换种方式来讲,相应代理手势识别器被配置为反映对应非代理手势识别器的状态。图3i示出类似于图3h中所示实施例的实施例。图3h与图3i之间的差别包括,代理手势识别器522-1具有与同一应用程序(例如,应用程序133-1)的另一个视图(例如,命中视图+1(510))中的手势识别器516-3状态对应的状态。在一些实施例中,当手势识别器516-3将用户输入识别为其对应事件,手势识别器516-3将动作消息518-3发送到手势处理程序552-2并进入事件已识别状态。代理手势识别器522-1也进入事件已识别状态,并且因此不允许手势识别器516-1将用户输入识别为其对应事件,因为代理手势识别器522-1不处于事件不可能状态或事件取消状态。在一些实施例中,当手势识别器516-3将用户输入识别为其对应事件,手势识别器516-3将动作消息518-3发送到手势处理程序552-2并进入事件已识别状态。代理手势识别器522-1也进入事件已识别状态,并且因此不允许手势识别器516-1将用户输入识别为其对应事件,因为代理手势识别器522-1不处于事件不可能状态或事件已取消状态。在一些实施例中,当手势识别器516-3无法将用户输入识别为其对应事件时,手势识别器516-3和代理手势识别器522-1进入事件不可能状态(其中代理手势识别器522-1反映手势识别器516-3的状态和状态变化),并且允许手势识别器516-1将用户输入识别为其对应事件。图4a示出包含四种状态的事件识别器状态机400。通过基于所接收的子事件管理事件识别器状态机400中的状态转变,事件识别器有效表达事件定义。例如,轻击手势可由两个或任选地三个子事件的序列有效定义。首先,应检测触摸,并且这将是子事件1。例如,触摸子事件可以是用户的手指触摸触敏表面中包括具有状态机400的事件识别器的视图。其次,其中触摸基本上不沿任何给定方向移动(例如,触摸位置的任何移动小于预定义的阈值,其可测量为显示器上的距离(例如,5mm)或测量为像素数(例如,5像素))并且延迟足够短的任选测量的延迟将充当子事件2。最终,触摸的结束(例如,用户的手指从触敏表面抬离)将充当子事件3。通过基于接收这些子事件对事件识别器状态机400进行编码以便在多种状态之间转变,事件识别器状态机400有效表达轻击手势事件定义。然而,应当注意,图4a所示的状态是示例性状态,并且事件识别器状态机400可包含更多或更少的状态并且/或者事件识别器状态机400中的每种状态可对应于所示状态中的一种或任何其他状态。在一些实施例中,无论事件类型为何,事件识别器状态机400在事件识别开始状态405中开始,并且可进行到剩余状态中的任一状态,具体取决于接收到的子事件。为便于对事件识别器状态机400进行论述,将论述从事件识别开始状态405到事件已识别状态415、事件可能状态410和事件不可能状态420的直接路径,之后对从事件可能状态410引入的路径进行描述。从事件识别开始状态405开始,如果接收到其自身包括事件的事件定义的子事件,则事件识别器状态机400将转变为事件已识别状态415。从事件识别开始状态405开始,如果接收到不是事件定义中的第一子事件的子事件,则事件识别器状态机400将转变为事件不可能状态420。从事件识别开始状态405开始,如果接收到是给定事件定义中的第一子事件而不是最终子事件的子事件,则事件识别器状态机400将转变为事件可能状态410。如果接收到的下个子事件是给定事件定义中的第二子事件但不是最终子事件,则事件识别器状态机400将保持在事件可能状态410。事件识别器状态机400可保持在事件可能状态410,只要所接收子事件的序列继续作为事件定义的一部分。如果在任何时候事件识别器状态机400处于事件可能状态410并且事件识别器状态机400接收不是事件定义的一部分的子事件,则事件识别器状态机400将转变为事件不可能状态420,从而确定当前事件(如果有的话)不是对应于此事件识别器(即,对应于事件识别器状态机400的事件识别器)的事件类型。如果在另一方面,事件识别器状态机400处于事件可能状态410并且事件识别器状态机400接收事件定义中的最后一个子事件,则事件识别器状态机400将转变为事件已识别状态415,从而成功完成事件识别。图4b示出输入源处理过程440的一个实施例,其具有表示视图如何接收关于相应输入的信息的有限状态机。应当注意,当设备的触敏表面上存在多个触摸时,这些触摸中的每个触摸是具有其自己的有限状态机的独立输入源。在此实施例中,输入源处理过程440包括四种状态:输入序列开始445、输入序列继续450、输入序列结束455和输入序列取消460。输入源处理过程440可例如当输入被递送到应用程序时,但仅在检测到输入序列完成之后由相应事件识别器使用。输入源处理过程440可与这种应用程序一起使用,该应用程序不能取消或撤销响应于递送到应用程序的输入序列而作出的改变。应当注意,图4b所示的状态是示例性状态,并且输入源处理过程440可包含更多或更少的状态并且/或者输入源处理过程440中的每种状态可对应于所示状态中的一种或任何其他状态。从输入序列开始445开始,如果接收到其自身完成输入序列的输入,则输入源处理过程440将过渡到输入序列结束455。从输入序列开始445开始,如果接收到指示输入序列终止的输入,则输入源处理过程440将过渡到输入序列取消460。从输入序列开始445开始,如果接收到是输入序列中的第一输入而不是最终输入的输入,则输入源处理过程440将过渡到状态输入序列继续450。如果接收到的下个输入是输入序列中的第二输入,则输入处理过程440将保持在状态输入序列继续450。输入源处理过程440可保持在状态输入序列继续450,只要所递送子事件的序列继续作为给定输入序列的一部分。如果在任何时候输入源处理过程440处于状态输入序列继续450并且输入源处理过程440接收不是输入序列的一部分的输入,则其将过渡到状态输入序列取消460。在另一方面,如果输入源处理过程440处于输入序列继续450并且输入处理过程440接收给定输入定义中的最后一个输入,则其将过渡到输入序列结束455,从而成功地接收一组子事件。在一些实施例中,输入源处理过程440可针对特定视图或编程层级而实现。在这种情况下,子事件的某些序列可导致过渡到状态输入取消460。例如,参见图4c,其假设活跃参与的视图仅由活跃参与的视图输入源处理程序480(下文称为“视图480”)表示。视图480包括竖直轻扫事件识别器,其仅由竖直轻扫事件识别器468(下文称为“识别器468”)表示为其事件识别器中的一者。在这种情况下,识别器468可能需要检测下列各项作为其定义的一部分:1)手指向下465-1;2)任选短延迟465-2;3)至少n个像素的竖直轻扫465-3;以及4)手指抬离465-4。对于此示例,识别器468还设置了其延迟触摸开始标记328和触摸取消标记332。现在来看以下子事件序列向识别器468的递送、以及视图480:·子事件序列465-1:检测到手指向下,其对应于识别器468的事件定义·子事件序列465-2:测量延迟,其对应于识别器468的事件定义·子事件序列465-3:手指执行可与竖直滚动兼容的竖直轻扫移动,但小于n个像素,并且因此不对应于识别器468的事件定义·子事件序列465-4:检测到手指抬离,其对应于识别器468的事件定义。在此,识别器468将成功地将子事件1和2识别为其事件定义的一部分,并且因此在子事件3递送之前将处于事件可能状态472。由于识别器468已设置其延迟触摸开始标记328,因此初始触摸子事件未发送到命中视图。对应地,视图480的输入源处理过程440在子事件3的递送之前将仍处于状态输入序列开始。一旦完成子事件3向识别器468的递送,识别器468的状态就转变为事件不可能476,并且重要的是,识别器468现已确定子事件序列不对应于其特定竖直轻扫手势事件类型(即,其已决定事件不是竖直轻扫。换句话讲,在此示例中未发生作为竖直轻扫的识别474。)。视图输入源处理程序480的输入源处理系统440还将更新其状态。在一些实施例中,当事件识别器发送指示其已开始识别事件的状态信息时,视图输入源处理程序480的状态将从输入序列开始状态482进行到输入序列继续状态484。在没有事件被识别的情况下,当触摸或输入结束时,视图输入源处理程序480进行到输入序列取消状态488,因为已设置事件识别器的触摸取消标记322。另选地,如果尚未设置事件识别器的触摸取消标记322,则当输入的触摸结束时,视图输入源处理程序480进行到输入序列结束状态486。由于已设置事件识别器468的触摸取消标记332,因此当事件识别器468转变为事件不可能状态476时,该识别器将向对应于事件识别器的命中视图发送触摸取消子事件或消息。因此,视图输入源处理程序480将转变为状态输入序列取消状态488。在一些实施例中,子事件465-4的递送不与由识别器468作出的任何事件识别决策密切相关,虽然视图输入源处理程序480的其他事件识别器(如果有的话)可继续分析子事件序列。下表以汇总表格格式呈现此示例性子事件序列46s的与上述事件识别器468的状态以及视图输入源处理程序480的状态有关的处理。在此示例中,视图输入源处理程序480的状态从输入序列开始44s进行到输入序列取消488,因为已设置识别器468的触摸取消标记332:子事件序列465状态:识别器468状态:视图480在递送开始之前事件识别开始470检测到手指向下465-1事件可能472输入序列开始482测量延迟465-2事件可能472输入序列继续484检测到手指竖直轻扫465-3事件不可能476输入序列继续484检测到手指抬离465-4事件不可能476输入序列取消488转向图5a,参照子事件序列520的示例,该子事件序列由包括多个事件识别器的视图接收。对于此示例,图5a中示出两个事件识别器,即滚动事件识别器580和轻击事件识别器590。出于举例说明的目的,图3a中的视图搜索结果面板304将与子事件序列520的接收以及滚动事件识别器580和轻击事件识别器590的状态转变有关。应当注意,在此示例中,子事件520的序列定义触敏显示器或触控板上的轻击手指手势,但相同事件识别技术可应用于大量上下文中(例如,检测到鼠标按钮按下)和/或利用编程层级的编程分级结构的实施例中。在将第一子事件递送到视图搜索结果面板304之前,事件识别器580和590分别处于事件识别开始状态582和592。在触摸301(其作为检测到手指下降的子事件521-1被递送到视图搜索结果面板304的活跃参与的事件识别器作为触摸子事件301-2,并且递送到地图视图305的活跃参与的事件识别器作为触摸子事件301-3)之后,滚动事件识别器580转变为事件可能状态584,并且类似地,轻击事件识别器590也转变为事件可能状态594。这是因为轻击和滚动的事件定义都以触摸诸如检测到触敏表面上的手指按下开始。轻击和滚动手势的一些定义可任选地包括初始触摸和事件定义中的任何下一个步骤之间的延迟。在本文论述的所有示例中,轻击和滚动手势两者的示例性事件定义识别紧随第一触摸子事件(检测到手指按下)的延迟子事件。因此,当测量延迟子事件521-2被递送到事件识别器580和590时,这两个事件识别器分别保持在事件可能状态584和594。最后,检测到手指抬离子事件521-3被递送到事件识别器580和590。在此情况下,事件识别器580和590的状态转变不同,因为轻击和滚动的事件定义不同。就滚动事件识别器580而言,保持在事件可能状态的下一个子事件将是检测到移动。然而,由于所递送的子事件是检测到手指抬离521-3,因此滚动事件识别器580转变为事件不可能状态588。不过,轻击事件定义以手指抬离子事件结束。因此,轻击事件识别器590在检测到手指抬离子事件521-3被递送之后转变为事件已识别状态596。需注意,在一些实施例中,如上文参考图4b和图4c所讨论,图4b中所讨论的输入源处理过程440可出于各种目的而用于视图层。下表以总结表格形式呈现子事件序列520与事件识别器580,590和输入源处理过程440相关的递送:转向图5b,参照由包括多个事件识别器的视图所接收的子事件序列530的另一个示例。针对该示例,在图5b中绘出两个事件识别器,即滚动事件识别器580和轻击事件识别器590。出于例示目的,图3a中的视图搜索结果面板304将与子事件序列530的接收以及滚动事件识别器580和轻击事件识别器590中的状态转变相关。需注意,在该示例中,子事件序列530定义触敏显示器上的滚动手指手势,但相同的事件识别技术可应用于大量上下文中(例如,检测到鼠标按钮按下、鼠标移动和鼠标按钮释放)和/或利用编程层级的编程分级结构的实施例中。在第一个子事件被递送到视图搜索结果面板304的活跃参与的事件识别器之前,事件识别器580和590分别处于事件识别开始状态582和592。紧随对应于触摸301的子事件的递送(如上所述),滚动事件识别器580转变为事件可能状态584,并且类似地,轻击事件识别器590转变为事件可能状态594。当测量延迟子事件531-2被递送到事件识别器580和590时,这两个事件识别器分别转变为事件可能状态584和594。接下来,检测到手指移动子事件531-3被递送到事件识别器580和590。在此情况下,事件识别器580和590的状态转变不同,因为轻击和滚动的事件定义不同。就滚动事件识别器580而言,保持在事件可能状态的下一个子事件是检测到移动,因此滚动事件识别器580在其接收检测到手指移动子事件531-3时保持在事件可能状态584。然而,如上所述,轻击的定义以手指抬离子事件结束,因此轻击事件识别器590转变为事件不可能状态598。最后,检测到手指抬离子事件531-4被递送到事件识别器580和590。轻击事件识别器已经处于事件不可能状态598,因而不发生状态转变。滚动事件识别器580的事件定义以检测到手指抬离结束。由于所递送的子事件是检测到手指抬离531-4,因此滚动事件识别器580转变为事件已识别状态586。值得注意的是,触敏表面上的手指移动可产生多个移动子事件,并且因此,滚动可在手指抬离之前被识别并且持续到手指抬离。下表以总结表格形式呈现子事件序列530与事件识别器580,590和输入源处理过程440相关的递送:转向图5c,参照由包括多个事件识别器的视图所接收的子事件序列540的另一个示例。针对该示例,在图5c中绘出两个事件识别器,即双击事件识别器570和轻击事件识别器590。出于例示目的,图3a中的地图视图305将与子事件序列540的接收以及双击事件识别器570和轻击事件识别器590中的状态转变相关。需注意,在该示例中,子事件序列540定义触敏显示器上的双击手势,但相同的事件识别技术可应用于大量上下文中(例如,检测到鼠标双击)和/或利用编程层级的编程分级结构的实施例中。在第一子事件被递送到地图视图305的活跃参与的事件识别器之前,事件识别器570和590分别处于事件识别开始状态572和592。紧随与触摸子事件301相关的子事件被递送到地图视图304(如上所述),双击事件识别器570和轻击事件识别器590分别转变为事件可能状态574和594。这是因为轻击和双击的事件定义都以触摸(诸如检测到触敏表面上的手指按下541-1)开始。当测量延迟子事件541-2被递送到事件识别器570和590时,这两个事件识别器分别保持在事件可能状态574和594。接下来,检测到手指抬离子事件541-3被递送到事件识别器570和590。在此情况下,事件识别器580和590的状态转变不同,因为轻击和双击的示例性事件定义不同。就轻击事件识别器590而言,事件定义中的最后子事件是检测到手指抬离,因此轻击事件识别器590转变为事件已识别状态596。然而,双击识别器570保持在事件可能状态574,因为不管用户最终可能做什么,延迟都已开始。不过,双击的完整事件识别定义需要另一个延迟,紧随完整的轻击子事件序列。这在已经处于事件已识别状态576的轻击事件识别器590和仍处于事件可能状态574的双击识别器570之间形成不明确的情况。因此,在一些实施例中,事件识别器可执行排他性标记和排他性例外列表,如上文参考图3b和图3c所讨论。在此,可设置轻击事件识别器590的排他性标记324,并且另外,可将轻击事件识别器590的排他性例外列表326配置为在轻击事件识别器590进入事件已识别状态596之后继续允许递送子事件到一些事件识别器(诸如双击事件识别器570)。虽然轻击事件识别器590保持在事件已识别状态596,但子事件序列540继续被递送到双击事件识别器570,其中测量延迟子事件541-4、检测到手指按下子事件541-5和测量延迟子事件541-6使双击事件识别器570保持在事件可能状态574;序列540和检测到手指抬离541-7的最后子事件的递送使双击事件识别器570转变为事件已识别状态576。此时,地图视图305选取由事件识别器570识别的双击事件,而非由轻击事件识别器590识别的单击事件。选取双击事件的决定根据以下因素的组合而做出:已设置轻击事件识别器590的排他性标记324、轻击事件识别器590的排他性例外列表326包括双击事件,以及轻击事件识别器590和双击事件识别器570两者已成功识别其相应的事件类型的事实。下表以总结表格形式呈现子事件序列540与事件识别器570和590以及子事件处理过程440相关的递送:在另一个实施例中,在图5c的事件情境中,单击手势未被识别,因为单击事件识别器具有辨识双击事件识别器的等候列表。所以,直到(如果有的话)双击事件识别器进入事件不可能状态,单击手势才被识别。在该示例中(其中双击手势被识别),单击事件识别器将保持在事件可能状态,直到双击手势被识别,此时,单击事件识别器将转变为事件不可能状态。现在参照图6a和图6b,这两个流程图示出根据一些实施例的事件识别方法600。方法600在电子设备上实施,所述电子设备在一些实施例中可以是电子设备102,如上所讨论。在一些实施例中,所述电子设备可包括被配置为检测多点触摸手势的触敏表面。另选地,所述电子设备可包括被配置为检测多点触摸手势的触摸屏。方法600被配置为执行包括视图分级结构的软件,所述视图分级结构具有多个视图。方法600显示608所述视图分级结构的一个或多个视图,并且执行610一个或多个软件元素。每个软件元素与特定视图相关联,并且每个特定视图包括一个或多个事件识别器,诸如在图3b和图3c中分别描述为事件识别器结构320和360的那些事件识别器。每个事件识别器通常包括基于一个或多个子事件的事件定义,其中所述事件定义可被实现为状态机,参见例如图3b的状态机340。事件识别器通常还包括事件处理程序,其为目标指定动作,并且被配置为响应于事件识别器检测到对应于事件定义的事件而将动作发送到目标。在一些实施例中,多个事件识别器中的至少一个事件识别器是具有手势定义和手势处理程序的手势识别器,如图6a的步骤612中所指出。在一些实施例中,事件定义定义用户手势,如图6a的步骤614中所指出。另选地,事件识别器具有一组事件识别状态616。这些事件识别状态可包括至少事件可能状态、事件不可能状态和事件已识别状态。在一些实施例中,如果事件识别器进入事件可能状态,则事件处理程序发起618其对应动作的准备以供递送到目标。如上文参考图5a至图5c中的示例和图4a所讨论,针对每个事件识别器所实现的状态机通常包括初始状态,例如事件识别开始状态405。接收形成事件定义初始部分的子事件会引起状态改变为事件可能状态410。因此,在一些实施例中,当事件识别器从事件识别开始状态405转变为事件可能状态410时,事件识别器的事件处理程序可在事件成功被识别之后开始准备其特定动作以递送到事件识别器的目标。另一方面,在一些实施例中,如果事件识别器进入事件不可能状态420,则事件处理程序可终止其对应动作的准备620。在一些实施例中,终止对应动作包括取消事件处理程序的对应动作的任何准备。图5b的示例对该实施例是有益的,因为轻击事件识别器590可能已发起其动作的准备618,然而,一旦检测到手指移动子事件531-3被递送到轻击事件识别器590,识别器590将转变为事件不可能状态598,578。此时,轻击事件识别器590可终止准备620其已发起准备618的动作。在一些实施例中,如果事件识别器进入事件已识别状态,则事件处理程序完成622其对应动作的准备以供递送到目标。图5c的示例示出该实施例,因为地图视图305的活跃参与的事件识别器识别了双击,其在一些具体实施中可为必然选择和/或执行地图视图305绘出的搜索结果的事件。在此,在双击事件识别器570成功识别由子事件序列540组成的双击事件之后,地图视图305的事件处理程序完成622其动作的准备,即是说,指出其已接收到激活命令。在一些实施例中,事件处理程序将其对应动作递送624到与事件识别器相关联的目标。继续参考图5c的示例,所准备的动作(即地图视图305的激活命令)将被递送到与地图视图305相关联的特定目标,其可为任意合适的编程方法或对象。另选地,所述多个事件识别器可独立地并行处理626一个或多个子事件的序列。在一些实施例中,一个或多个事件识别器可被配置为排他性事件识别器628,如上文分别参考图3b和图3c的排他性标记324和364所讨论。当事件识别器被配置为排他性事件识别器时,事件递送系统在排他性事件识别器识别事件之后阻止视图分级结构中活跃参与的视图的任何其他事件识别器(识别事件的事件识别器的例外列表326,366中列出的那些除外)接收(相同的子事件序列的)后续子事件。此外,当非排他性事件识别器识别事件时,事件递送系统阻止视图分级结构中活跃参与的视图的任何排他性事件识别器接收后续子事件,识别事件的事件识别器的例外列表326,366中列出的那些(如果有)除外。在一些实施例中,排他性事件识别器可包括630事件例外列表,如上文分别参考图3b和图3c的排他性例外列表326和366所讨论。如上文对图5c的讨论中所指出,事件识别器的排他性例外列表可用于允许事件识别器继续进行事件识别,即使当组成其相应事件定义的子事件序列重叠时亦然。因此,在一些实施例中,事件例外列表包括其对应事件定义具有重复子事件632的事件,诸如图5c的单击/双击事件示例。另选地,事件定义可定义用户输入操作634。在一些实施例中,一个或多个事件识别器可适于延迟递送子事件序列中的每一个子事件,直到事件被识别之后。方法600检测636一个或多个子事件的序列,并且在一些实施例中,所述一个或多个子事件的序列可包括原始触摸事件638。原始触摸事件可包括但不限于触敏表面上基于触摸的手势的基本组成,诸如与手指或触控笔初始按下相关的数据,与多个手指或触笔在触敏表面上移动的发起相关的数据,两个手指沿相反方向移动,触控笔抬离触敏表面等。所述一个或多个子事件的序列中的子事件可包括许多形式,包括但不限于按键按下、按键按住、按键按下释放、按钮按下、按钮按住、按钮按下释放、操纵杆移动、鼠标移动、鼠标按钮按下、鼠标按钮释放、触控笔触摸、触控笔移动、触控笔释放、口头指令、检测到的眼移动、生物特征输入和检测到的用户生理变化等。方法600将视图分级结构的视图中的一个视图辨识640为命中视图。所述命中视图确定视图分级结构中的哪些视图是活跃参与的视图。图3a中绘出一个示例,其中活跃参与的视图303包括搜索结果面板304和地图视图305,因为触摸子事件301接触了与地图视图305相关联的区域。在一些实施例中,视图分级结构内的第一活跃参与的视图可被配置642为阻止相应子事件被递送到与所述第一活跃参与的视图相关联的事件识别器。该行为可实现上文参考图3b和图3c所讨论的跳过属性(分别为330和370)。当为事件识别器设置了跳过属性时,仍针对与视图分级结构中其他活跃参与的视图相关联的事件识别器执行相应子事件的递送。另选地,视图分级结构内第一活跃参与的视图可被配置644为阻止相应子事件被递送到与所述第一活跃参与的视图相关联的事件识别器,除非所述第一活跃参与的视图是命中视图。该行为可实现上文参考图3b和图3c所讨论的条件跳过属性(分别为332和372)。在一些实施例中,视图分级结构内第二活跃参与的视图被配置646为阻止相应子事件被递送到与所述第二活跃参与的视图相关联的事件识别器和与所述第二活跃参与的视图的上级相关联的事件识别器。该行为可实现上文参考图3b和图3c所讨论的停止属性(分别为328和368)。方法600将相应子事件递送648到视图分级结构内每一个活跃参与的视图的事件识别器。在一些实施例中,视图分级结构中活跃参与的视图的事件识别器在处理子事件序列中的下一个子事件之前处理相应的子事件。另选地,视图分级结构中活跃参与的视图的事件识别器在处理相应子事件的同时做出其子事件识别决定。在一些实施例中,视图分级结构中活跃参与的视图的事件识别器可同时处理一个或多个子事件的序列650;另选地,视图分级结构中活跃参与的视图的事件识别器可并行处理一个或多个子事件的序列。在一些实施例中,一个或多个事件识别器可适于延迟递送652子事件序列的一个或多个子事件,直到事件识别器识别事件之后。该行为反映延迟的事件。例如,考虑可以使用多次轻击手势的视图中的单击手势。在那种情况下,轻击事件变成“轻击+延迟”识别器。本质上,当事件识别器实施该行为时,事件识别器将延迟事件识别,直到确定子事件序列实际上确实对应于其事件定义。当接收者视图不能适当地回应已取消的事件时,该行为可能是适当的。在一些实施例中,事件识别器将延迟更新其事件识别状态到其相应的活跃参与的视图,直到事件识别器确定子事件序列并不对应于其事件定义。如上文参考图3b和图3c所讨论,提供了延迟触摸开始标记328,368、延迟触摸结束标记330,370和触摸取消标记332,372,以针对特定需求定制子事件递送技术以及事件识别器和视图状态信息更新。图7a至图7u示出根据一些实施例在同时打开的应用程序中进行导航的示例性用户界面和被事件识别器识别的用户输入。这些图中的用户界面用于示出下文描述的过程,包括图8a至图8b、图9a至图9c、图10a至图10b和图14a至图14b中的过程。虽然后面的许多示例将参考触摸屏显示器156(其中触敏表面和显示器组合在一起)上的输入给出,但在一些实施例中,设备检测与显示器(如,触摸板或触控板)分开的触敏表面上的输入。在一些实施例中,触敏表面具有主轴,该主轴对应于显示器上的主轴。根据这些实施例,设备检测对应于显示器上相应位置的位置处的与触敏表面的接触。这样,当触敏表面与显示器分开时,设备使用设备在触敏表面上检测到的用户输入来操纵电子设备显示器上的用户界面。应当理解,类似的方法可用于本文所述的其他用户界面。图7a示出根据一些实施例的电子设备102上的示例性用户界面(“主屏幕”708)。类似的用户界面可在电子设备102上实现。在一些实施例中,主屏幕708由应用程序启动器软件应用程序(有时称为跳板)显示。在一些实施例中,触摸屏156上的用户界面包括以下元素或者其子集或超集:·一个或多个无线通信的一个或多个信号强度指示符702,诸如蜂窝信号和wi-fi信号;·时间704;以及·电池状态指示符706。该示例性用户界面包括多个应用程序图标5002(如,5002-25至5002-38)。从主屏幕708开始,可使用手指手势来启动应用程序。例如,在对应于应用程序图标5002-36的位置处轻击手指手势701发起启动邮件应用程序。在图7b中,响应于在应用程序图标5002-36上检测到手指手势701,邮件应用程序被启动并且邮件应用程序视图712-1显示在触摸屏156上。用户可按类似方式启动其他应用程序。例如,用户可从任一应用程序视图712按下主页按钮710以返回到主屏幕708(图7a),并且对主屏幕708上的相应应用程序图标5002使用手指手势来启动其他应用程序。图7c至图7g示出响应于在主屏幕708上对应于相应应用程序图标5002的位置处检测到相应手指手势而连续启动相应应用程序,并且相应用户界面(即,相应应用程序视图)依次显示。具体来说,图7c示出媒体存储应用程序视图712-2响应于应用程序图标5002-32上的手指手势而显示。在图7d中,记事本应用程序视图712-3响应于应用程序图标5002-30上的手指手势而显示。图7e示出地图应用程序视图712-4响应于应用程序图标5002-27上的手指手势而显示。在图7f中,天气应用程序视图712-5响应于应用程序图标5002-28上的手指手势而显示。图7g示出web浏览器应用程序视图712-6响应于应用程序图标5002-37上的手指手势而显示。在一些实施例中,打开的应用程序序列对应于邮件应用程序、媒体存储应用程序、记事本应用程序、地图应用程序、天气应用程序和web浏览器应用程序的启动。图7g还示出用户界面对象(如,书签图标)上的手指手势703(如,轻击手势)。在一些实施例中,响应于检测到书签图标上的手指手势703,web浏览器应用程序在触摸屏156上显示书签列表。类似地,用户可使用其他手势(如,在用户界面对象“地址”上的轻击手势,其允许用户通常能借助屏幕键盘键入新地址或修改所显示的地址;在所显示的网页中的任何链接上的轻击手势,其发起导航至对应于所选链接的网页;等等)与所显示的应用程序(例如,web浏览器应用程序)交互。在图7g中,检测到第一预定义输入(如,主页按钮710上的双击705)。另选地,在触摸屏156上检测到多指轻扫手势(如,三指向上轻扫手势,如图所示为手指接触707、709和711的移动)。图7h示出响应于检测到第一预定义输入(如,双击705或包括手指接触707、709和711的多指轻扫手势),同时显示web浏览器应用程序视图712-6的一部分和应用程序图标区域716。在一些实施例中,响应于检测到第一预定义输入,设备进入应用程序视图选择模式以选择同时打开的应用程序中的一个应用程序,并且web浏览器应用程序视图712-6的该部分和应用程序图标区域716作为该应用程序视图选择模式的一部分同时显示。应用程序图标区域716包括一组打开的应用程序图标,该组打开的应用程序图标对应于所述多个同时打开的应用程序中的至少一些同时打开的应用程序。在该示例中,该便携式电子设备具有同时打开的多个应用程序(如,邮件应用程序、媒体存储应用程序、记事本应用程序、地图应用程序、天气应用程序和web浏览器应用程序),虽然它们未全部同时显示。如图7h中所示,应用程序图标区域506包括天气应用程序、地图应用程序、记事本应用程序和媒体存储应用程序(即,在打开的应用程序序列中紧随当前显示的应用程序即web浏览器应用程序的四个应用程序)的应用程序图标(如,5004-2、5004-4、5004-6和5004-8)。在一些实施例中,应用程序图标区域716中显示的打开的应用程序图标序列或次序对应于预先确定的序列中打开的应用程序(如,天气、地图、记事本和媒体存储应用程序)的序列。图7h还示出在打开的应用程序图标5004-8上检测到手势713(如,轻击手势)。在一些实施例中,响应于检测到手势713,显示对应的应用程序视图(如,图7c中的媒体存储应用程序视图712-2)。图7h示出在对应于应用程序图标区域716的位置处检测到向左轻扫手势715。在图7i中,响应于检测到向左轻扫手势715,应用程序图标区域716中的应用程序图标(如,5004-2、5004-4、5004-6和5004-8)被滚动。由于滚动,邮件应用程序的应用程序图标5004-12取代先前所显示的应用程序图标(如,5004-2、5004-4、5004-6和5004-8)显示在应用程序图标区域506中。在图7j中,在web浏览器应用程序视图712-6上检测到第一类型的手势(如,多指向左轻扫手势,包括手指接触717、719和721的移动)。图7k示出响应于检测到第一类型的手势,天气应用程序视图712-5显示在触摸屏156上。应当指出的是,在打开的应用程序序列中,天气应用程序紧接web浏览器应用程序。图7k还示出在天气应用程序视图712-5上检测到第一类型的第二手势(如,多指向左轻扫手势,包括手指接触723、725和727的移动)。图7l示出响应于检测到第一类型的第二手势,地图应用程序视图712-4显示在触摸屏156上。应当指出的是,在打开的应用程序序列中,地图应用程序紧接天气应用程序。图7l还示出在地图应用程序视图712-4上检测到第一类型的第三手势(如,多指向左轻扫手势,包括手指接触729、731和733的移动)。图7m示出响应于检测到第一类型的第三手势,记事本应用程序视图712-3显示在触摸屏156上。应当指出的是,在打开的应用程序序列中,记事本应用程序紧接地图应用程序。图7m还示出在记事本应用程序视图712-3上检测到第一类型的第四手势(如,多指向左轻扫手势,包括手指接触735、737和739的移动)。图7n示出响应于检测到第一类型的第四手势,媒体存储应用程序视图712-2显示在触摸屏156上。应当指出的是,在打开的应用程序序列中,媒体存储应用程序紧接记事本应用程序。图7n还示出在媒体存储应用程序视图712-2上检测到第一类型的第五手势(如,多指向左轻扫手势,包括手指接触741、743和745的移动)。图7o示出响应于检测到第一类型的第五手势,邮件应用程序视图712-1显示在触摸屏156上。应当指出的是,在打开的应用程序序列中,邮件应用程序紧接媒体存储应用程序。图7o还示出在邮件应用程序视图712-1上检测到第一类型的第六手势(如,多指向左轻扫手势,包括手指接触747、749和751的移动)。图7p示出响应于检测到第一类型的第六手势,web浏览器应用程序视图712-6显示在触摸屏156上。应当指出的是,web浏览器应用程序在打开的应用程序的序列的一端上,并且邮件应用程序在打开的应用程序的序列的相对端上。图7p还示出在web浏览器应用程序视图712-6上检测到第二类型的手势(如,多指向右轻扫手势,包括手指接触753、755和757的移动)。图7q示出在一些实施例中响应于检测到第二类型的手势,邮件应用程序视图712-1显示在触摸屏156上。参见图7r,在web浏览器应用程序视图712-6上检测到多指手势(如,五指捏合手势,包括手指接触759、761、763、765和767的移动)。图7s示出在检测到触摸屏156上的多指手势时,同时显示主屏幕708的至少一部分和web浏览器应用程序视图712-6。如图所示,web浏览器应用程序视图712-6以缩小比例显示。在触摸屏156上检测到多指手势时,根据多指手势来调节缩小比例。例如,缩小比例随手指接触759、761、763、765和767的进一步捏合而减小(即,web浏览器应用程序视图712-6以更小的比例显示)。另选地,缩小比例随手指接触759、761、763、765和767的张开而增大(即,web浏览器应用程序视图712-6以比之前更大的比例显示)。在一些实施例中,当不再检测到多指手势时,停止显示web浏览器应用程序视图712-6并显示整个主屏幕708。另选地,当不再检测到多指手势时,确定显示整个主屏幕708还是以全屏比例显示web浏览器应用程序视图712-6。在一些实施例中,所述确定基于不再显示多指手势时的缩小比例而作出(如,如果在不再检测到多指手势时应用程序视图以小于预定义阀值的比例显示,则显示整个主屏幕708;如果在不再检测到多指手势时应用程序视图以大于预定义阀值的比例显示,则以全屏比例显示应用程序视图,而不显示主屏幕708)。在一些实施例中,所述确定还基于多指手势的速度而作出。图7t示出在地图应用程序视图712-4上检测到手势(如,轻扫手势,包括手指接触769的移动)。图7u示出通过确定手势为边缘轻扫手势而显示的动画。在图7u中,图7t中所示的地图应用程序视图712-4是尺寸减小的。同时,记事本应用程序视图712-3(如,从触摸屏156的右边缘)滚动到触摸屏156上。图7u还示出与记事本应用程序对应的记事本应用程序图标5002-30滚动到触摸屏156上。在一些实施例中,通过确定手势为边缘轻扫手势,设备102进入应用程序视图选择模式以选择同时打开的应用程序中的一个应用程序,以供显示在对应的应用程序视图中。在一些实施例中,通过确定手势不是边缘轻扫手势(而仍是轻扫手势),地图应用程序视图712-4中显示的地图被滚动。例如,通过确定手势为向左轻扫手势(不是边缘轻扫手势),地图应用程序视图712-4中显示的地图从右向左滚动。类似地,其他方向的轻扫手势发起地图应用程序视图712-4中显示的地图(参见图7t)以对应方向滚动。图8a和图8b为流程图,示出根据一些实施例的事件识别方法800。方法800在具有触敏显示器的电子设备(如,图1b中的设备102)上执行(802)。所述电子设备被配置为执行至少第一软件应用程序和第二软件应用程序。第一软件应用程序包括第一组一个或多个手势识别器,并且第二软件应用程序包括一个或多个视图和第二组一个或多个手势识别器(如,应用程序133-2具有手势识别器516-4,并且应用程序133-1具有手势识别器516-1至516-3以及视图508、510和512,如图3f所示)。相应的手势识别器具有对应的手势处理程序(如,手势处理程序552-1对应于手势识别器516-1,并且手势处理程序552-3对应于手势识别器516-4)。第一组一个或多个手势识别器通常与第二组一个或多个手势识别器不同。方法800允许用户使用手势控制当前未显示在电子设备显示器上的隐藏的打开的应用程序(如,第一软件应用程序),诸如后台应用程序、暂停的应用程序或休眠的应用程序。因此,用户可执行不是由当前显示在电子设备显示器上的应用程序(如,第二软件应用程序)提供而是由当前打开的应用程序中的一个当前打开的应用程序提供的操作(如,通过对隐藏的应用程序启动器软件应用程序使用手势,以显示主屏幕或切换到下一个软件应用程序)。在一些实施例中,第一软件应用程序为(804)应用程序启动器(如,跳板)。例如,如图7a所示,应用程序启动器显示对应于多个应用程序的多个应用程序图标5002。应用程序启动器(如,基于触摸屏156上的手指手势)接收用户选择的应用程序图标5002,并且响应于接收到用户选择,启动对应于所选应用程序图标5002的应用程序。第二软件应用程序通常为由应用程序启动器启动的软件应用程序。如图7a和图7b所示,应用程序启动器接收关于邮件应用程序图标5002-36上的轻击手势701的信息,并启动邮件应用程序。作为响应,邮件应用程序在触摸屏156上显示邮件应用程序视图712-1。第二应用程序可以是对应于应用程序图标5002(图7a)的任何应用程序或可由应用程序启动器启动的任何其他应用程序(如,媒体存储应用程序,图7c;记事本应用程序,图7d;地图应用程序,图7e;天气应用程序,图7f;web浏览器应用程序,图7g;等等)。在以下对方法800的描述中,应用程序启动器用作示例性第一软件应用程序,并且web浏览器应用程序用作示例性第二软件应用程序。在一些实施例中,电子设备在编程分级结构中只有两个软件应用程序:应用程序启动器和一个其他软件应用程序(通常为对应于显示在电子设备102的触摸屏156上的一个或多个视图的软件应用程序)。在一些实施例中,第一软件应用程序为(806)操作系统应用程序。如本文所用,操作系统应用程序是指与操作系统118集成的应用程序(图1a至图1c)。操作系统应用程序通常驻留在如图2中的核心操作系统层208或操作系统api软件206中。操作系统应用程序通常不可被用户移除,而其他应用程序通常可由用户安装或移除。在一些实施例中,操作系统应用程序包括应用程序启动器。在一些实施例中,操作系统应用程序包括设置应用程序(如,用于显示/修改系统设置或者设备/全局内部状态134中的一个或多个值的应用程序,图1c)。在一些实施例中,操作系统应用程序包括可访问性模块127。在一些实施例中,电子设备在编程分级结构中只有三个软件应用程序:应用程序启动器、设置应用程序和一个其他应用程序(通常为对应于显示在电子设备102的触摸屏156上的一个或多个视图的软件应用程序)。电子设备显示(808)第二软件应用程序的一个或多个视图的至少子组(如,web浏览器应用程序视图712-6,图7g)。在一些实施例中,所述显示包括(810)显示第二软件应用程序的一个或多个视图的至少子组,而不显示第一软件应用程序的任何视图。例如,在图7g中,未显示应用程序启动器(如,主屏幕708)的任何视图。在一些实施例中,所述显示包括(812)显示第二软件应用程序的一个或多个视图的至少子组,而不显示任何其他应用程序的视图。例如,在图7g中,只显示web浏览器应用程序的一个或多个视图。在显示第二软件应用程序的一个或多个视图的至少所述子组时,电子设备检测到(814)触敏显示器上的触摸输入序列(如,手势703,其包括按下事件和松开事件;或另一个手势,其包括手指接触707、709和711的按下,手指接触707、709和711在触摸屏156上的移动,以及手指接触707、709和711的抬离)。所述触摸输入序列包括一个或多个触摸输入的第一部分和第一部分之后的一个或多个触摸输入的第二部分。如本文所用,术语“序列”是指一个或多个触摸事件发生的次序。例如,在包括手指接触707、709和711的触摸输入序列中,第一部分可包括手指接触707、709和711的按下,并且第二部分可包括手指接触707、709和711的移动以及手指接触707、709和711的抬离。在一些实施例中,在一个或多个触摸输入的第一部分中的触摸输入与所显示的第二软件应用程序视图中的至少一个视图至少部分地重叠时发生检测(816)。在一些实施例中,即使所述触摸输入与所显示的第二软件应用程序视图中的至少一个视图至少部分地重叠,第一软件应用程序也接收一个或多个触摸输入的第一部分。例如,即使未显示应用程序启动器,应用程序启动器也接收所显示的web浏览器视图(图7g)上的触摸输入的第一部分。在检测到触摸输入序列的第一阶段期间(818),电子设备:(如,使用事件分配器模块315,图3d)将一个或多个触摸输入的第一部分递送(820)到第一软件应用程序和第二软件应用程序;从第一组中的手势识别器(如,使用第一组中每个手势识别器(通常为每个接收手势识别器)中的事件比较器3033,图3d)辨识(822)识别出一个或多个触摸输入的第一部分的一个或多个匹配的手势识别器;以及使用对应于所述一个或多个匹配的手势识别器的一个或多个手势处理程序处理(824)一个或多个触摸输入的第一部分(如,激活一个或多个对应的事件处理程序319,图3d)。在一些实施例中,检测到触摸输入序列的第一阶段为检测到一个或多个触摸输入的第一部分的阶段。关于递送操作(820),在一些实施例中,第一软件应用程序在接收一个或多个输入的第一部分之后,将一个或多个触摸输入的第一部分递送到第一组中的手势识别器的至少子组,并且第二软件应用程序在接收一个或多个输入的第一部分之后,将一个或多个触摸输入的第一部分递送到第二组中的手势识别器的至少子组。在一些实施例中,电子设备或电子设备中的事件分配器模块(如,315,图3d)将一个或多个触摸输入的第一部分递送到第一组和第二组中的手势识别器的至少子组(如,事件分配器模块315将一个或多个触摸输入的第一部分递送到手势识别器516-1、516-2和516-4,图3f)。例如,当在触摸屏156上检测到包括手指接触707、709和711的手指手势(图7g)时,按下事件被递送到应用程序启动器的一个或多个手势识别器和web浏览器应用程序的一个或多个手势识别器。在另一个示例中,轻击手势703的按下事件(图7g)被递送到应用程序启动器的一个或多个手势识别器和web浏览器应用程序的一个或多个手势识别器。在一些实施例中,当第一组中的手势识别器未识别出一个或多个触摸输入的第一部分时(如,检测到的事件与手势定义不匹配或手势未完成),处理一个或多个触摸输入的第一部分包括执行空操作(如,设备不更新所显示的用户界面)。在一些实施例中,电子设备从第二组中的手势识别器中辨识识别出一个或多个触摸输入的第一部分的一个或多个匹配的手势识别器。电子设备使用与一个或多个匹配的手势识别器对应的一个或多个手势处理程序来处理一个或多个触摸输入的第一部分。例如,响应于被递送到web浏览器应用程序的一个或多个手势识别器的轻击手势703(图7g),web浏览器应用程序中的匹配的手势识别器(如,识别出书签图标上的轻击手势的手势识别器,图7g)以在触摸屏156上显示书签列表的方式处理轻击手势703。在一些实施例中,在检测到触摸输入序列的第一阶段之后的第二阶段期间,电子设备:(如,使用事件分配器模块315,图3d)将一个或多个触摸输入的第二部分递送(826,图8b)到第一软件应用程序,而不将一个或多个触摸输入的第二部分递送到第二软件应用程序;(如,使用每个匹配的手势识别器中的事件比较器3033,图3d)从一个或多个匹配的手势识别器中辨识识别出触摸输入序列的第二个匹配的手势识别器;以及使用于相应匹配的手势识别器对应的手势处理程序来处理触摸输入序列。在一些实施例中,检测到触摸输入序列的第二阶段为检测到一个或多个触摸输入的第二部分的阶段。例如,当在触摸屏156上检测到包括手指接触707、709和711的手指手势(图7g)时,触摸移动和抬离事件被递送到应用程序启动器的一个或多个手势识别器,而触摸事件不会被递送到web浏览器应用程序。电子设备辨识应用程序启动器的匹配的手势识别器(如,三指向上轻扫手势识别器),并使用对应于三指向上轻扫手势识别器的手势处理程序来处理触摸输入序列。在第二阶段期间,第二软件应用程序不接收一个或多个触摸输入的第二部分,这通常是因为(如,在编程分级结构中)第一软件应用程序优先于第二软件应用程序。因此,在一些实施例中,当第一软件应用程序中的手势识别器识别出一个或多个触摸输入的第一部分时,第一软件应用程序中的一个或多个手势识别器排他地接收一个或多个触摸输入的后续第二部分。另外,在第二阶段期间,第二软件应用程序可能不会接收一个或多个触摸输入的第二部分,因为第二软件应用程序中的手势识别器与一个或多个触摸输入的第一部分不匹配。在一些实施例中,使用对应于相应匹配的手势识别器的手势处理程序来处理触摸输入序列包括(834)在触敏显示器的第一预定义区域显示对应于多个同时打开的应用程序中的至少一些应用程序的一组打开的应用程序图标,并且同时显示第二软件应用程序的一个或多个视图的至少子组。例如,在图7h中,预定义区域716中的应用程序图标5004对应于电子设备的同时打开的应用程序。在一些实施例中,根据打开的应用程序序列显示预定义区域716中的应用程序图标5004。在图7h中,电子设备同时显示web浏览器应用程序视图712-6的子组和预定义区域716。在一些实施例中,使用对应于相应匹配的手势识别器的手势处理程序来处理触摸输入序列包括(828)显示第一软件应用程序的一个或多个视图。例如,响应于多指捏合手势(图7r),电子设备显示主屏幕708(图7a)。在一些实施例中,显示第一软件应用程序的一个或多个视图包括显示第一软件应用程序的一个或多个视图,而不同时显示对应于任何其他软件应用程序的视图(如,图7a)。在一些实施例中,使用对应于相应匹配的手势识别器的手势处理程序来处理触摸输入序列包括(830)使用第一软件应用程序的一个或多个视图的显示来替换第二软件应用程序的一个或多个视图的显示(如,显示主屏幕708,图7a)。因此,在显示第一软件应用程序的一个或多个视图之后,停止显示第二软件应用程序的一个或多个视图。在一些实施例中,使用第一软件应用程序的一个或多个视图的显示来替换第二软件应用程序的一个或多个视图的显示包括显示第一软件应用程序的一个或多个视图,而不同时显示对应于任何其他软件应用程序的视图(图7a)。在一些实施例中,电子设备同时执行(832)第一软件应用程序、第二软件应用程序和第三软件应用程序。在一些实施例中,使用对应于相应匹配的手势识别器的手势处理程序来处理触摸输入序列包括使用第三软件应用程序的一个或多个视图来替换第二软件应用程序的一个或多个所显示的视图。例如,响应于多指轻扫手势,电子设备使用天气应用程序视图712-5的显示来替换web浏览器应用程序视图712-6的显示(图7j至图7k)。在一些实施例中,使用第三软件应用程序的一个或多个视图来替换第二软件应用程序的一个或多个所显示的视图包括显示第三软件应用程序的一个或多个视图,而不同时显示对应于任何其他软件应用程序的视图。在一些实施例中,第三软件应用程序在打开的应用程序序列中紧接第二软件应用程序。在一些实施例中,使用对应于相应匹配的手势识别器的手势处理程序来处理触摸输入序列包括启动设置应用程序。例如,响应于十指轻击手势,电子设备启动设置应用程序。需注意,上文针对方法800所述的过程的详情也以类似方式适用于下文所述的方法900。为了简明起见,这些详情在下文中不再重复。图9a至图9c为流程图,示出根据一些实施例的事件识别方法900。方法900在具有触敏显示器的电子设备上执行(902)。所述电子设备被配置为执行至少第一软件应用程序和第二软件应用程序。第一软件应用程序包括第一组一个或多个手势识别器,并且第二软件应用程序包括一个或多个视图和第二组一个或多个手势识别器。相应的手势识别器具有对应的手势处理程序。在一些实施例中,第一组一个或多个手势识别器与第二组一个或多个手势识别器不同。方法900允许用户使用手势控制当前未显示在电子设备显示器上的隐藏的打开的应用程序(如,第一软件应用程序),诸如后台应用程序、暂停的应用程序或休眠的应用程序。因此,用户可执行不是由当前显示在电子设备显示器上的应用程序(如,第二软件应用程序)提供而是由当前打开的应用程序中的一个当前打开的应用程序提供的操作(如,通过对隐藏的应用程序启动器软件应用程序使用手势,以显示主屏幕或切换到下一个软件应用程序)。在一些实施例中,第一软件应用程序为(904)应用程序启动器(如,跳板)。在一些实施例中,第一软件应用程序为(906)操作系统应用程序。在以下对方法900的描述中,应用程序启动器用作示例性第一软件应用程序,并且web浏览器应用程序用作示例性第二软件应用程序。电子设备显示(908)第一组一个或多个视图(如,web浏览器应用程序视图712-6,图7g)。第一组一个或多个视图包括第二软件应用程序的一个或多个视图的至少子组。例如,第二软件应用程序可具有多个应用程序视图(如,应用程序133-1的应用程序视图317,图3d),并且电子设备显示所述多个应用程序视图中的至少一个视图。在一些实施例中,所述子组包括第二软件应用程序的全部一个或多个视图。在一些实施例中,显示第一组一个或多个视图包括(910)显示第一组一个或多个视图,而不显示第一软件应用程序的任何视图(如,web浏览器应用程序视图712-6,图7g)。在一些实施例中,显示第一组一个或多个视图包括(912)显示第一组一个或多个视图而不显示任何其他软件应用程序的视图。例如,在图7g中,只显示web浏览器应用程序的一个或多个视图。在显示第一组一个或多个视图时,电子设备检测到(914)触敏显示器上的触摸输入序列,并确定(920)第一组一个或多个手势识别器中的至少一个手势识别器是否识别出一个或多个触摸输入的第一部分。例如,在显示web浏览器应用程序视图712-6(图7g)时,设备确定应用程序启动器的手势识别器是否识别出触摸输入的第一部分。所述触摸输入序列包括一个或多个触摸输入的第一部分和第一部分之后的一个或多个触摸输入的第二部分(即,第二部分在第一部分之后)。在一些实施例中,触摸输入序列与第二软件应用程序的一个或多个所显示的视图中的至少一个所显示的视图至少部分地重叠(916)。例如,即使未显示应用程序启动器,应用程序启动器也接收web浏览器应用程序视图712-6(图7g)上的触摸输入的第一部分。在一些实施例中,在确定第一组一个或多个手势识别器中至少一个手势识别器识别出一个或多个触摸输入的第一部分之前,电子设备同时将一个或多个触摸输入的第一部分递送(918)到第一软件应用程序和第二软件应用程序。例如,在确定应用程序启动器中的至少一个手势识别器识别出按下事件之前,应用程序启动器和web浏览器应用程序两者均接收手指接触707、709和711(图7g)的按下事件。通过确定第一组一个或多个手势识别器中至少一个手势识别器识别出一个或多个触摸输入的第一部分(922,图9b),电子设备:将所述触摸输入序列递送(924)到第一软件应用程序,而不将所述触摸输入序列递送到第二软件应用程序;确定(926)第一组一个或多个手势识别器中至少一个手势识别器是否识别出所述触摸输入序列;以及通过确定第一组一个或多个手势识别器中至少一个手势识别器识别出所述触摸输入序列,使用第一组一个或多个手势识别器中识别出所述触摸输入序列的所述至少一个手势识别器来处理(928)所述触摸输入序列。例如,当在触摸屏156上检测到三指接触707、709和711的按下和触摸移动(图7g)时,电子设备辨识应用程序启动器的至少三指向上轻扫手势识别器识别出触摸输入。然后,电子设备将后续触摸事件(如,手指接触707、709和711的抬离)递送到应用程序启动器,而不将所述后续触摸事件递送到web浏览器应用程序。电子设备进一步辨识所述三指向上轻扫手势识别器识别出所述触摸输入序列,并使用对应于所述三指向上轻扫手势识别器的手势处理程序来处理所述触摸输入序列。在一些实施例中,使用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列包括(930)显示第一软件应用程序的一个或多个视图。例如,响应于检测到多指捏合手势(图7r),电子设备显示主屏幕708(图7a)。在一些实施例中,使用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列包括(932)使用第一软件应用程序的一个或多个视图的显示来替换第一组一个或多个视图的显示(如,显示主屏幕708,图7a,其为应用程序启动器软件应用程序的一部分)。在一些实施例中,电子设备同时执行第一软件应用程序、第二软件应用程序和第三软件应用程序;并使用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列包括(934)使用第三软件应用程序的一个或多个视图来替换第一组一个或多个视图。在一些实施例中,使用第三软件应用程序的一个或多个视图来替换第一组一个或多个视图包括显示第三软件应用程序的一个或多个视图,而不同时显示对应于任何其他软件应用程序的视图。例如,响应于多指轻扫手势,电子设备使用天气应用程序视图712-5的显示来替换web浏览器应用程序视图712-6的显示(图7j至图7k)。在一些实施例中,使用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列包括(936)在触敏显示器的第一预定义区域中显示对应于多个同时打开的应用程序中的至少一些同时打开的应用程序的一组打开的应用程序图标,并且同时显示第一组一个或多个视图的至少子组。例如,在图7h中,预定义区域716中的应用程序图标5004对应于电子设备的同时打开的应用程序。在一些实施例中,根据打开的应用程序序列显示预定义区域716中的应用程序图标5004。在图7h中,电子设备同时显示预定义区域716和web浏览器应用程序视图712-6的子组。通过确定第一组一个或多个手势识别器中的手势识别器未识别出一个或多个触摸输入的第一部分(938,图9c),电子设备:将触摸输入序列递送(940)到第二软件应用程序;确定(942)第二组一个或多个手势识别器中至少一个手势识别器是否识别出触摸输入序列;以及通过确定第二组一个或多个手势识别器中至少一个手势识别器识别出触摸输入序列,使用第二组一个或多个手势识别器中识别出触摸输入序列的所述至少一个手势识别器来处理(944)触摸输入序列。例如,当一个或多个触摸输入的第一部分为轻击手势(如703,图7g),并且应用程序启动器中的手势识别器未识别出所述轻击手势时,电子设备将所述轻击手势递送到web浏览器应用程序,并确定web浏览器应用程序中至少一个手势识别器是否识别出所述轻击手势。当web浏览器应用程序(或web浏览器应用程序的手势识别器)识别出书签图标上的轻击手势703时,电子设备使用对应的手势处理程序来处理轻击手势703。图10a至图10b为流程图,示出根据一些实施例的事件识别方法。需注意,上文针对方法600、800和900所述的过程的详情也以类似方式适用于下文所述的方法1000。为了简明起见,这些详情在下文中不再重复。方法1000在具有内部状态(如,设备/全局内部状态134,图1c)的电子设备上执行(1002)。所述电子设备被配置为执行包括具有多个视图的视图分级结构的软件。在方法1000中,至少一个手势识别器具有多个手势定义。这有助于手势识别器以明显不同的操作模式工作。例如,设备可具有正常操作模式和可访问性操作模式。在正常操作模式中,使用下一个应用程序手势在应用程序之间移动,并且所述下一个应用程序手势被定义为三指向左轻扫手势。在可访问性操作模式中,三指向左轻扫手势被用于执行不同的功能。因此,在可访问性操作模式中需要与三指向左轻扫不同的手势,以对应于下一个应用程序手势(如,可访问性操作模式中的四指向左轻扫手势)。通过具有与所述下一个应用程序手势相关联的多个手势定义,设备可根据当前操作模式为下一个应用程序手势选择手势定义中的一个。这提供了在不同的操作模式中使用手势识别器的灵活性。在一些实施例中,根据操作模式调整具有多个手势定义的多个手势识别器(如,在正常操作模式中用三个手指执行的手势在可访问性操作模式中用四个手指执行)。在一些实施例中,内部状态包括(1016)可访问性操作模式的一个或多个设置(如,内部状态指出设备是否正在以可访问性操作模式操作)。在一些实施例中,软件为(1018)应用程序启动器或包括应用程序启动器(如,跳板)。在一些实施例中,软件为(1020)操作系统应用程序或包括操作系统应用程序(如,与设备的操作系统集成的应用程序)。电子设备显示(1004)视图分级结构的一个或多个视图。电子设备执行(1006)一个或多个软件元素。每个软件元素与特定视图相关联(如,应用程序133-1具有一个或多个应用程序视图317,图3d),并且每个特定视图包括一个或多个事件识别器(如,事件识别器325,图3d)。每个事件识别器具有基于一个或多个子事件的一个或多个事件定义,以及事件处理程序(如,手势定义3035和事件递送信息3039中对对应事件处理程序的标引,图3d)。事件处理程序为目标指定动作,并且被配置为响应于事件识别器检测到与一个或多个事件定义中的特定事件定义对应的事件而将动作发送到目标(所述事件定位为例如当事件识别器具有多个事件定义时,选自所述一个或多个事件定义的事件定义,或当事件识别器只有一个事件定义时的单一事件定义)。电子设备检测(1008)一个或多个子事件序列。电子设备将视图分级结构中的视图中的一个视图辨识为(1010)命中视图。命中视图确定视图分级结构中哪些视图是活跃参与的视图。电子设备将相应的子事件递送(1012)到视图分级结构内每个活跃参与的视图的事件识别器。在一些实施例中,视图分级结构中的一个或多个活跃参与的视图包括命中视图。在一些实施例中,视图分级结构中的一个或多个活跃参与的视图包括默认视图(如,应用程序启动器的主屏幕708)。视图分级结构中活跃参与的视图的至少一个事件识别器具有(1014)多个事件定义,其中一个事件定义根据电子设备的内部状态而被选择。例如,事件识别器325-1具有多个手势定义(如,3037-1和3037-2,图3d)。在一些实施例中,事件识别器325-1基于设备/全局内部状态134中的一个或多个值而选择事件识别器325-1中多个手势定义中的一个手势定义。然后所述至少一个事件识别器根据所选择的事件定义,在处理子事件序列中的下一个子事件之前处理相应的子事件。在一些实施例中,视图分级结构中活跃参与的视图的两个或更多个事件识别器中的每个事件识别器具有多个事件定义,其中一个事件定义根据电子设备的内部状态而被选择。在此类实施例中,两个或更多个事件识别器中的至少一个事件识别器根据所选择的事件定义,在处理子事件序列中的下一个子事件之前处理相应的子事件。例如,图7j至图7k示出下一个应用程序手势,该手势发起显示下一个应用程序的应用程序视图。在一些实施例中,应用程序启动器包括下一个应用程序手势识别器,其包括与三指向左轻扫手势匹配的手势定义。出于该示例的目的,假定下一个应用程序手势识别器还包括对应于四指向左轻扫手势的手势定义。当设备/全局内部状态134中的一个或多个值被设为一个或多个默认值时,下一个应用程序手势识别器使用三指向左轻扫手势定义而不使用四指向左轻扫手势定义。当(如,通过使用可访问性模块127,图1c)修改了设备/全局内部状态134中的一个或多个值时,下一个应用程序手势识别器使用四指向左轻扫手势定义而不使用三指向左轻扫手势定义。因此,在该示例中,当修改了设备/全局内部状态134中的一个或多个值时,四指向左轻扫手势发起显示下一个应用程序的应用程序视图。类似地,图7r至图7s示出,响应于检测到五指捏合手势,主屏幕手势发起显示缩小比例的web浏览器应用程序视图712-6和显示主屏幕708的至少一部分。基于设备/全局内部状态134和主屏幕手势识别器中的手势定义,可使用四指捏合手势、三指捏合手势或任何其他合适的手势发起显示缩小比例的web浏览器应用程序视图712-6和显示主屏幕708的一部分。在一些实施例中,所述多个事件定义包括(1020):第一事件定义,其对应于使用第一手指数目的第一轻扫手势;和第二事件定义,其对应于使用第二手指数目的第二轻扫手势,其中第二手指数目不同于第一手指数目。例如,相应手势识别器的多个事件定义可包括三指轻扫手势和四指轻扫手势。在一些实施例中,所述多个事件定义包括:第一事件定义,其对应于使用第一手指数目的第一类型的第一手势;和第二事件定义,其对应于使用第二手指数目的第一类型的第二手势,其中第二手指数目不同于第一手指数目(如,单指轻击手势和双指轻击手势,双指捏合手势和三指捏合手势,等等)。在一些实施例中,所述多个事件定义包括对应于第一手势的第一事件定义和对应于第二手势的第二事件定义,其中第二手势不同于第一手势(如,轻扫手势和捏合手势,轻扫手势和轻击手势,等等)。在一些实施例中,根据电子设备的内部状态并根据(用电子设备)确定相应事件定义不对应于除相应事件识别器外活跃参与的视图的任何事件识别器的事件定义,而为相应事件识别器选择(1022)多个事件定义中的相应定义。例如,相应手势识别器可具有两个事件定义:第一事件定义,其对应于通常用于正常操作模式的三指向左轻扫手势;和第二事件定义,其对应于通常用于可访问性操作模式的四指向左轻扫手势。当电子设备内部状态的设置方式使得电子设备以可访问性模式操作时,电子设备确定用于第二事件定义的四指向左轻扫手势是否被活跃参与的视图的任何其他事件识别器使用。如果四指向左轻扫手势未被活跃参与的视图的任何其他事件识别器使用,则四指向左轻扫手势被选择用于可访问性操作模式中的相应手势识别器。另一方面,如果四指向左轻扫手势被活跃参与的视图的任何其他事件识别器使用,则三指向左轻扫手势被用于即使在可访问性操作模式中的相应手势识别器。这能阻止两个或更多个手势识别器不可取地响应于同一手势。在一些实施例中,根据电子设备的内部状态并根据(用电子设备)确定相应事件定义不对应于除相应事件识别器外任何事件识别器(包括活跃参与的视图和任何其他视图的事件识别器)的事件定义,而为相应事件识别器选择多个事件定义中的相应定义。在一些实施例中,视图分级结构中活跃参与的视图的两个或更多个事件识别器各自具有(1024)相应的多个事件定义,并且根据电子设备的内部状态和根据(由电子设备)确定相应事件定义不对应于为除相应事件识别器外具有两个或更多个事件定义的任何事件识别器选择的任何事件定义,而为相应事件识别器选择相应多个事件定义中的相应事件定义。例如,活跃参与的视图可具有第一手势识别器和第二手势识别器。在该示例中,第一手势识别器具有:第一事件定义,其对应于通常用于正常操作模式的三指向左轻扫手势;第二事件定义,其对应于通常用于可访问性操作模式的四指向左轻扫手势。第二手势识别器具有:第三事件定义,其对应于通常用于正常操作模式的双指向左轻扫手势;第四事件定义,其对应于通常用于可访问性操作模式的四指向左轻扫手势。当电子设备内部状态的设置方式使得电子设备以可访问性模式操作时,电子设备确定满足第二事件定义的四指向左轻扫手势是否被选择用于具有两个或更多个事件定义的任何其他事件识别器(如,第二事件手势识别器)。如果四指向左轻扫手势未被选择用于具有两个或更多个事件定义的任何其他事件识别器,则四指向左轻扫手势被选择用于可访问性操作模式中的第一手势识别器。所以,四指向左轻扫手势未被选择用于第二手势识别器,因为四指向左轻扫手势已被选择用于第一手势识别器。相反,双指向左轻扫手势被选择用于第二手势识别器,因为双指向左轻扫手势未被选择用于包括第一手势识别器在内的具有两个或更多个事件定义的任何其他手势识别器。在另一个示例中,活跃参与的视图具有第一手势识别器和第三手势识别器,而没有第二手势识别器。第三手势识别器具有通常用于正常操作模式的第三事件定义(对应于双指向左轻扫手势)和通常用于可访问性操作模式的第五事件定义(对应于三指向左轻扫手势)。在可访问性操作模式中,三指向左轻扫手势可被选择用于第三手势识别器,因为三指向左轻扫手势未被选择用于具有两个或更多个事件定义的任何其他手势识别器。尽管针对多指向左轻扫手势描述了上述示例,但上文所述的方法适用于任何方向的轻扫手势(如,向右轻扫手势、向上轻扫手势、向下轻扫手势和/或任何斜向轻扫手势)或任何其他类型的手势(如,轻击手势、捏合手势、张开手势,等等)。在一些实施例中,根据所选择的事件定义来处理相应子事件包括(1026)显示与包括视图分级结构的软件不同的第一软件应用程序的一个或多个视图(如,同时显示包括所述软件的一个或多个视图的用户界面712-6的至少一部分和主屏幕708的一部分,图7s)。在一些实施例中,所述至少一个事件识别器通过使用第一软件应用程序(不同于包括视图分级结构的软件)的一个或多个视图(如,主屏幕708,图7a)的显示来替换视图分级结构的一个或多个视图的显示来处理(1028)相应的子事件。在一些实施例中,至少一个事件识别器通过以下方式处理(1030)相应的子事件:在电子设备中的显示器的第一预定义区域中显示与同时打开的应用程序中的至少一些应用程序对应的一组打开的应用程序图标;以及同时显示视图分级结构的一个或多个视图的至少子组(如,打开的应用程序图标5004和用户界面712-6的至少一部分,图7h)。例如,电子设备响应于正常操作模式中的三指向上轻扫手势和可访问性操作模式中的四指向上轻扫手势,同时显示该组打开的应用程序图标和视图分级结构的一个或多个视图的至少子组。根据一些实施例,图11示出了根据如上所述的本发明的原理进行配置的电子设备1100的功能框图。设备的功能块可由硬件、软件或硬件和软件的组合来实现,以执行本发明的原理。本领域的技术人员将会理解,图11中所述的功能块可被组合或者被分割为子块,以实现如上所述的本发明的原理。因此,本文中的描述可支持本文所述功能块的任何可能的组合或分割或进一步限定。如图11所示,电子设备1100包括:被配置为接收触摸输入的触敏显示器单元1102;耦接至触敏显示器单元1102的处理单元1106。在一些实施例中,处理单元1106包括执行单元1108、显示使能单元1110、检测单元1112、递送单元1114、辨识单元1116和触摸输入处理单元1118。处理单元1106被配置为:(如,使用执行单元1108)执行至少第一软件应用程序和第二软件应用程序。第一软件应用程序包括第一组一个或多个手势识别器,第二软件应用程序包括一个或多个视图和第二组一个或多个手势识别器。相应的手势识别器具有对应的手势处理程序。处理单元1106被配置为使能显示第二软件应用程序的一个或多个视图的至少子组(如,使用触敏显示器单元1102上的显示使能单元1110)。处理单元1106被配置为在显示第二软件应用程序的一个或多个视图的至少子组时,(如,使用检测单元1112)检测触敏显示器单元1102上的触摸输入序列。所述触摸输入序列包括一个或多个触摸输入的第一部分和第一部分之后的一个或多个触摸输入的第二部分。处理单元1106被配置为在检测到触摸输入序列的第一阶段期间:(如,使用递送单元1114)将一个或多个触摸输入的第一部分递送到第一软件应用程序和第二软件应用程序;(如,使用辨识单元1116)从第一组一个或多个匹配手势识别器中辨识识别出一个或多个触摸输入的第一部分的手势识别器;以及(如,使用触摸输入处理单元1118)使用与一个或多个匹配手势识别器对应的一个或多个手势处理程序来处理一个或多个触摸输入的第一部分。在一些实施例中,处理单元1106被配置为在一个或多个触摸输入的第一部分中的触摸输入与第二软件应用程序的所显示的视图中的至少一个视图至少部分地重叠时(如,使用检测单元1112)检测触摸输入序列。在一些实施例中,处理单元1106被配置为使能(如,使用触敏显示器单元1102上的显示使能单元1110)显示第二软件应用程序的一个或多个视图的至少子组,而不显示第一软件应用程序的任何视图。在一些实施例中,处理单元1106被配置为使能(如,使用触敏显示器单元1102上的显示使能单元1110)显示第二软件应用程序的一个或多个视图的至少子组,而不显示任何其他应用程序的视图。在一些实施例中,处理单元1106被配置为在检测到触摸输入序列的第二阶段期间:(如,使用递送单元1114)将一个或多个触摸输入的第二部分递送到第一软件应用程序,而不将一个或多个触摸输入的第二部分递送到第二软件应用程序;(如,使用辨识单元1116)从一个或多个匹配手势识别器中辨识识别出触摸输入序列的第二个匹配手势识别器;以及(如,使用触摸输入处理单元1118)使用与相应的匹配手势识别器对应的手势处理程序来处理触摸输入序列。在一些实施例中,处理单元1106被配置为通过使能(如,使用触敏显示器单元1102上的显示使能单元1110)显示第一软件应用程序的一个或多个视图,而使用与相应的匹配手势识别器对应的手势处理程序来处理触摸输入序列。在一些实施例中,处理单元1106被配置为通过(如,使用触敏显示器单元1102上的显示使能单元1110)使用第一软件应用程序的一个或多个视图的显示来替换第二软件应用程序的一个或多个视图的显示,而使用与相应的匹配手势识别器对应的手势处理程序来处理触摸输入序列。在一些实施例中,处理单元1106被配置为:(如,使用执行单元1108)同时执行第一软件应用程序、第二软件应用程序和第三软件应用程序;以及通过(如,使用触敏显示器单元1102上的显示使能单元1110)使用第三软件应用程序的一个或多个视图来替换第二软件应用程序的一个或多个所显示的视图,而使用与相应的匹配手势识别器对应的手势处理程序来处理触摸输入序列。在一些实施例中,处理单元1106被配置为:使得能够(如,使用显示使能单元1110)在触敏显示器单元1102的第一预定义区域中显示与多个同时打开的应用程序中的至少一些应用程序对应的一组打开的应用程序图标;使能(如,使用显示使能单元1110)同时显示第二软件应用程序的一个或多个视图的至少子组。在一些实施例中,第一软件应用程序为应用程序启动器。在一些实施例中,第一软件应用程序为操作系统应用程序。根据一些实施例,图12示出了根据如上所述本发明原理配置的电子设备1200的功能框图。设备的功能块可由硬件、软件或硬件和软件的组合来实现,以执行本发明的原理。本领域的技术人员能够理解,图12中所述的功能块可被组合或者被分割为子块,以实现如上所述的本发明的原理。因此,本文中的描述可支持本文所述功能块的任何可能的组合或分割或进一步限定。如图12所示,电子设备1200包括被配置为接收触摸输入的触敏显示器单元1202;和耦接至触敏显示器单元1202的处理单元1206。在一些实施例中,处理单元1206包括执行单元1208、显示使能单元1210、检测单元1212、确定单元1214、递送单元1216和触摸输入处理单元1218。处理单元1206被配置为执行至少第一软件应用程序和第二软件应用程序(如,使用执行单元1208)。第一软件应用程序包括第一组一个或多个手势识别器,第二软件应用程序包括一个或多个视图和第二组一个或多个手势识别器。相应的手势识别器具有对应的手势处理程序。处理单元1206被配置为使能显示第一组一个或多个视图(如,使用显示使能单元1210)。第一组一个或多个视图包括第二软件应用程序的一个或多个视图的至少子组。处理单元1206被配置为在显示第一组一个或多个视图时,检测触敏显示器单元上的触摸输入序列(如,使用检测单元1212)。所述触摸输入序列包括一个或多个触摸输入的第一部分和一个或多个触摸输入第一部分之后的第二部分。处理单元1206被配置为确定第一组一个或多个手势识别器中的至少一个手势识别器是否识别出一个或多个触摸输入的第一部分(如,使用确定单元1214)。处理单元1206被配置为通过确定第一组一个或多个手势识别器中的至少一个手势识别器识别出一个或多个触摸输入的第一部分:将触摸输入序列递送至第一软件应用程序,而不将触摸输入序列递送至第二软件应用程序(如,使用递送单元1216);确定第一组一个或多个手势识别器中的至少一个手势识别器是否识别出触摸输入序列(如,使用确定单元1214)。处理单元1206被配置为通过确定第一组一个或多个手势识别器中的至少一个手势识别器识别出触摸输入序列,用第一组一个或多个手势识别器中识别出触摸输入序列的至少一个手势识别器来处理触摸输入序列(如,使用触摸输入处理单元1218)。处理单元1206被配置为通过确定第一组一个或多个手势识别器中的手势识别器均未识别出一个或多个触摸输入的第一部分:将触摸输入序列递送至第二软件应用程序(如,使用递送单元1216);并且确定第二组一个或多个手势识别器中的至少一个手势识别器是否识别出触摸输入序列(如,使用确定单元1214)。处理单元1206被配置为通过确定第二组一个或多个手势识别器中的至少一个手势识别器识别出触摸输入序列,用第二组一个或多个手势识别器中识别出触摸输入序列的至少一个手势识别器来处理触摸输入序列(如,使用触摸输入处理单元1218)。在一些实施例中,触摸输入序列与第二软件应用程序的一个或多个所显示的视图中的至少一个视图至少部分地重叠。在一些实施例中,处理单元1206被配置为使能显示第一组一个或多个视图,而不显示第一软件应用程序的任何视图(如,使用触敏显示器单元1202上的显示使能单元1210)。在一些实施例中,处理单元1206被配置为使能显示第一组一个或多个视图,而不显示任何其他软件应用程序的视图(如,使用触敏显示器单元1202上的显示使能单元1210)。在一些实施例中,在确定第一组一个或多个手势识别器中的至少一个手势识别器识别出一个或多个触摸输入的第一部分之前,处理单元1206被配置为将一个或多个触摸输入的第一部分同时递送至第一软件应用程序和第二软件应用程序(如,使用递送单元1216)。在一些实施例中,第一软件应用程序为应用程序启动器。在一些实施例中,第一软件应用程序为操作系统应用程序。在一些实施例中,处理单元1206被配置为通过使能显示第一软件应用程序的一个或多个视图(如,使用触敏显示器单元1202上的显示使能单元1208)用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列。在一些实施例中,处理单元1206被配置为通过用第一软件应用程序的一个或多个视图的显示来替换第一组一个或多个视图的显示(如,使用触敏显示器单元1202上的显示使能单元1208)用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列。在一些实施例中,处理单元1206被配置为同时执行第一软件应用程序、第二软件应用程序和第三软件应用程序(如,使用执行单元1208)。处理单元1206被配置为通过用第三软件应用程序的一个或多个视图替换第一组一个或多个视图(如,使用触敏显示器单元1202上的显示使能单元1210)用第一组一个或多个手势识别器中的至少一个手势识别器来处理触摸输入序列。在一些实施例中,处理单元1206被配置为:使得能够在触敏显示器单元1202的第一预定义区域中显示与多个同时打开应用程序中的至少一些应用程序对应的一组打开的应用程序图标(如,使用显示使能单元1210);并同时显示第一组一个或多个视图的至少子组(如,使用显示使能单元1210)。根据一些实施例,图13示出了根据如上所述本发明的原理配置的电子设备1300的功能框图。设备的功能块可由硬件、软件或硬件和软件的组合来实现,以执行本发明的原理。本领域的技术人员能够理解,图13中所述的功能块可被组合或者被分割为子块,以实现如上所述的本发明的原理。因此,本文中的描述可支持本文所述功能块的任何可能的组合或分割或进一步限定。如图13所示,电子设备1300包括被配置为显示一个或多个视图的显示单元1302;被配置为存储内部状态的存储单元1304;以及耦接至显示单元1302和存储单元1304的处理单元1306。在一些实施例中,处理单元1306包括执行单元1308、显示使能单元1310、检测单元1312、辨识单元1314、递送单元1316和事件/子事件处理单元1318。在一些实施例中,处理单元1306包括存储单元1304。处理单元1306被配置为:执行包括具有多个视图的视图分级结构的软件(如,使用执行单元1308);使能显示视图分级结构的一个或多个视图(如,使用显示单元1302上的显示使能单元1310);并执行一个或多个软件元素(如,使用执行单元1308)。每个软件元素与特定视图相关联,并且每个特定视图包括一个或多个事件识别器。每个事件识别器具有:基于一个或多个子事件的一个或多个事件定义,和事件处理程序。事件处理程序为目标指定动作,并且被配置为响应于事件识别器检测到与一个或多个事件定义中的特定事件定义对应的事件而将动作发送到目标。处理单元1306被配置为:检测一个或多个子事件的序列(如,使用检测单元1312);并将视图分级结构的其中一个视图辨识为命中视图(如,使用辨识单元1314)。所述命中视图确定视图分级结构中的哪些视图是活跃参与的视图。处理单元1306被配置为将相应的子事件递送至用于视图分级结构内的每个活跃参与的视图的事件识别器(如,使用递送单元1316)。用于视图分级结构中的活跃参与的视图的至少一个事件识别器具有多个事件定义,根据电子设备的内部状态选择其中的一个,并且所述至少一个事件识别器在处理子事件的序列中的下一个子事件之前根据所选择的事件定义来处理相应的子事件(如,使用事件/子事件处理单元1318)。在一些实施例中,所述多个事件定义包括与使用手指的第一数目的第一轻扫手势对应的第一事件定义、与使用手指的第二数目的第二轻扫手势对应的第二事件定义,其中手指的第二数目不同于手指的第一数目。在一些实施例中,内部状态包括用于可访问性操作模式的一个或多个设置。在一些实施例中,根据电子设备的内部状态并通过确定相应的事件定义不对应于除相应事件识别器之外的用于活跃参与的视图的任何事件识别器的事件定义来为相应事件识别器选择多个事件定义中的相应定义。在一些实施例中,用于视图分级结构中的活跃参与的视图的两个或更多个事件识别器各自具有相应的多个事件定义,并且根据电子设备的内部状态以及通过确定相应的事件定义不对应于为相应事件识别器以外的具有两个或更多个事件定义的任何事件识别器选择的任何事件定义来为相应事件识别器选择相应的多个事件定义中的相应事件定义。在一些实施例中,处理单元1306被配置为通过使能显示与包括视图分级结构的软件不同的第一软件应用程序的一个或多个视图(如,使用显示单元1302上的显示使能单元1310)根据所选择的事件定义来处理相应的子事件。在一些实施例中,处理单元1306被配置为通过用第一软件应用程序的一个或多个视图的显示来替换视图分级结构的一个或多个视图的显示(如,使用显示单元1302上的显示使能单元1310)来处理相应的子事件,所述第一软件应用程序不同于包括视图分级结构的软件。在一些实施例中,处理单元1306被配置为通过以下方式处理相应的子事件:使得能够在显示单元1302的第一预定义区域中显示与多个同时打开的应用程序中的至少一些应用程序对应的一组打开的应用程序图标(如,使用显示使能单元1310);并允许同时显示视图分级结构中的一个或多个视图的至少子组(如,使用显示使能单元1310)。在一些实施例中,所述软件为应用程序启动器。在一些实施例中,所述软件为操作系统应用程序。图14a至图14b为流程图,示出了根据一些实施例的事件识别方法1400。需注意,上面参考方法600、800、900和1000所述的过程的详情也以类似方式适用于下文所述的方法1400。为了简明起见,这些详情在下文中不再重复。在具有触敏表面的电子设备上执行方法1400。在一些实施例中,触敏表面为触敏显示器的一部分(即,在一些实施例中,电子设备包括触敏显示器)。设备显示(1402)多个视图中的一个或多个视图。一个或多个所显示的视图中的第一视图包括多个手势识别器。第一视图中的多个手势识别器包括一个或多个代理手势识别器和一个或多个非代理手势识别器。每个手势识别器指示多个预定义状态中的一个状态(如,图4a中所示的事件识别开始405、事件可能410,事件已识别415和事件不可能420)。第一视图中的第一代理手势识别器指示与不在第一视图中的相应的非代理手势识别器的状态对应的状态。设备检测(1404)一个或多个子事件的序列。在一些实施例中,所述一个或多个子事件的序列对应于触敏表面上的一个或多个输入的序列。设备将相应的子事件递送(1406)至不在第一视图中的相应的非代理手势识别器和第一视图中的一个或多个非代理手势识别器的至少子组。例如,如图3h所示,辨识相应子事件的事件信息被发送至命中视图512中的手势识别器516-1和不在命中视图512中的手势识别器516-4。在另一个示例中,如图3i所示,辨识相应子事件的事件信息被发送至命中视图512中的手势识别器516-1和命中视图+1(510)中的手势识别器516-3。在一些实施例中,设备更新(1408)第一视图中的第一代理手势识别器的状态,以匹配不在第一视图中的相应的非代理手势识别器的状态。因此,第一视图中的第一代理手势识别器的状态反映不在第一视图中的相应的非代理手势识别器的状态。例如,在图3h中,代理手势识别器522-1的状态被更新,以匹配手势识别器516-4的状态。在另一个示例中,在图3i中,代理手势识别器522-1的状态被更新,以匹配手势识别器516-3的状态。在一些实施例中,设备通过确定相应的非代理手势识别器的状态已改变而自动更新第一代理手势识别器的状态(如,无需任何用户动作,不同于与在操作1404中检测到的一个或多个子事件对应的触摸手势,以发起第一代理手势识别器的状态的更新)。在一些实施例中,设备以预定义的时间间隔自动更新第一代理手势识别器的状态。设备根据第一代理手势识别器的状态和第一视图中的一个或多个非代理手势识别器的至少所述子组的状态来处理(1410)相应的子事件。在一些实施例中,设备通过确定第一代理手势识别器处于事件不可能状态并且相应的子事件与第一视图中的一个或多个非代理手势识别器的至少一个的事件定义一致来处理相应的子事件。例如,在图3h中,设备通过确定代理手势识别器522-1处于事件不可能状态(如,因为手势识别器516-4未能识别出相应的子事件)并且相应的子事件与手势识别器516-1的事件定义一致来处理相应的子事件。在该示例中,手势识别器516-1未响应于相应的子事件而进入事件不可能状态,而是进入或保持与连续的事件识别或成功的事件识别相一致的状态。在一些实施例中,处理相应的子事件包括(1412)用第一视图中的一个或多个非代理手势识别器中的至少一个非代理手势识别器来处理相应的子事件。例如,在图3h中,用至少手势识别器516-1来处理相应的子事件。在一些实施例中,第一视图中的一个或多个非代理手势识别器中的至少第一非代理手势识别器适于(1414)在识别与一个或多个子事件的序列对应的手势之前在第一视图中等待第一代理手势识别器进入一个或多个预定义状态中的特定预定义状态。例如,如以上图3h所示,在一些实施例中,手势识别器516-1包括等待列表,该等待列表指示在手势识别器516-1能识别出与一个或多个子事件的序列对应的手势之前代理手势识别器522-1必须进入事件不可能或事件取消状态。在一些实施例中,或在一些情况下,特定的预定义状态指示与第一代理手势识别器对应的非代理手势识别器未能识别出与一个或多个子事件的序列对应的手势。在一些实施例中,例如,与web浏览器应用程序视图712-6(图7g)相关联的单指向上轻扫手势识别器适于在识别单指向上轻扫手势之前等待对应于不与web浏览器应用程序视图712-6相关联(如,与应用程序启动器或操作系统相关联)的三指向上轻扫手势识别器的代理手势识别器进入事件不可能状态。在另外的示例中,与相应的应用程序视图(716-6(图7j)、712-5(图7k)、712-4(图7l)、712-3(图7m)、712-2(图7n)、712-1(图7o))相关联的单指向左轻扫手势识别器适于在识别单指向左轻扫手势之前等待对应于不与相应的应用程序视图相关联(如,与应用程序启动器或操作系统相关联)的三指向左轻扫手势识别器的相应代理手势识别器进入事件不可能状态。在一些实施例中,与web浏览器应用程序视图712-6(图7p)相关联的单指向右轻扫手势识别器被配置为等待不与web浏览器应用程序视图712-6相关联的三指向右轻扫手势识别器进入事件不可能状态。在一些实施例中,设备延迟(1416)第一视图中的一个或多个非代理手势识别器中的至少第一非代理手势识别器识别与一个或多个子事件的序列对应的手势,直到第一代理手势识别器进入一个或多个预定义状态中的特定预定义状态之后。例如,如上文参考图3h所说明,在一些实施例中,在代理手势识别器522-1进入事件不可能或事件取消状态之前,手势识别器516-1无法识别与一个或多个子事件的序列对应的手势。在一些实施例中,所述一个或多个预定义状态包括(1418,图14b)以下中的一个或多个:事件不可能状态和事件取消状态。在一些实施例中,所述一个或多个预定义状态还包括以下中的一个或多个:事件识别开始状态和事件可能状态。在一些实施例中,第一视图中的一个或多个非代理手势识别器中的至少第二非代理手势识别器适于(1420)延迟将一个或多个子事件的序列中的一个或多个子事件递送至第一视图,直到第二非代理手势识别器无法识别与一个或多个子事件的序列对应的手势之后。例如,在一些实施例中,第二非代理手势识别器具有延迟触摸开始标签328,368和/或延迟触摸结束标签330,370(图3b和图3c)。如上文参考图3b和图3c所说明,延迟触摸标签(如,延迟触摸开始标签328,368和/或延迟触摸结束标签330,370)用于(如,通过电子设备执行方法400)控制将子事件发送至第一视图的条件和时机。在一些实施例中,第一非代理手势识别器和第二非代理手势识别器为相同的非代理手势识别器。在一些其他实施例中,第一非代理手势识别器不同于第二非代理手势识别器。在一些实施例中,设备延迟(1422)将一个或多个子事件的序列中的一个或多个子事件递送至第一视图,直到第一视图中的第二非代理手势识别器无法识别与一个或多个子事件的序列对应的手势之后。例如,延迟触摸开始标签328,368和/或延迟触摸结束标签330,370(图3b和图3c)可用于延迟一个或多个子事件的序列中的一个或多个子事件向第一视图的递送。在一些实施例中,第一视图中的多个手势识别器包括(1424)第二代理手势识别器;第一视图中的第二代理手势识别器指示与不在第一视图中的相应的非代理手势识别器的状态对应的状态。在一些实施例中,第一视图中的多个代理手势识别器(如,第一代理手势识别器和第二代理手势识别器)具有与不在第一视图中的相应的非代理手势识别器的状态对应的状态。在一些实施例中,第一代理手势识别器用于第一视图中的相应的非代理手势识别器的等待列表中,第二代理手势识别器用于延迟触摸的递送。在一些实施例中,第一代理手势识别器用于第一视图中的相应的非代理手势识别器的等待列表中,第二代理手势识别器与第一视图中的相应的非代理手势识别器或第二非代理手势识别器的委托一起使用。在一些实施例中,第一视图中的第二代理手势识别器指示与不在第一视图中的特定非代理手势识别器的状态对应的状态。所述特定的非代理手势识别器不同于相应的非代理手势识别器。在一些实施例中,所述特定的非代理手势识别器和相应的非代理手势识别器与不同的视图相关联。例如,命中视图(如,命中视图512,图3h)中的第一代理手势识别器可指示与命中视图+1(如,命中视图+1510,图3h)中的非代理手势识别器的状态对应的状态,并且命中视图中的第二代理手势识别器可指示与命中视图+2或最高视图(如,508,图3h)中的另一个非代理手势识别器的状态对应的状态。在一些实施例中,第一非代理手势识别器适于在识别与一个或多个子事件的序列对应的手势之前等待第一代理手势识别器和第二代理手势识别器进入特定的预定义状态(如,事件不可能状态)。在一些实施例中,所述多个视图在(1426)视图分级结构中;并且相应的非代理手势识别器在视图分级结构中不同于第一视图的第二视图中。例如,如图3i所示,在一些实施例中,所述多个视图(如,508、510和512)在视图分级结构506中。相应的非代理手势识别器(如,手势识别器516-3)在命中视图+1(510)中,其不同于手势识别器516-1的视图512。在一些实施例中,第一视图中的一个或多个非代理手势识别器和不在第一视图中的相应的非代理手势识别器与(1428)相同的软件应用程序相关联。例如,如图3i所示,在一些实施例中,非代理手势识别器516-1和非代理手势识别器516-3与相同的软件应用程序(如,应用程序133-1)相关联。在一些其他实施例中,如图3h所示,非代理手势识别器516-1与第一软件应用程序(如,应用程序133-1)相关联,非代理手势识别器516-4与不同于第一软件应用程序的第二软件应用程序(如,应用程序133-2)相关联。例如,第一视图中的一个或多个非代理手势识别器(如,竖直轻扫手势识别器)与浏览器应用程序(如,图7r)相关联,相应的非代理手势识别器(如,五指捏合手势识别器)与应用程序启动器软件应用程序(如,图7r至图7s)相关联。在一些实施例中,第一视图中的一个或多个非代理手势识别器与(1430)软件应用程序相关联;不在第一视图中的相应的非代理手势识别器与不同于软件应用程序的系统软件(如,操作系统)相关联。例如,在一些实施例中,第一视图中的一个或多个非代理手势识别器与地图应用程序(如,图7t)相关联,相应的非代理手势识别器与操作系统的多任务模块(图7t至图7u)相关联。根据一些实施例,图15示出了根据如上所述本发明的某些原理配置的电子设备1500的功能框图。设备的功能块可由硬件、软件或硬件和软件的组合来实现,以执行本发明的原理。本领域的技术人员能够理解,图15中所述的功能块可被组合或者被分割为子块,以实现如上所述的本发明的某些原理。因此,本文中的描述可支持本文所述功能块的任何可能的组合或分割或进一步限定。如图15所示,电子设备1500包括被配置为接收触摸输入的触敏表面单元1502;和耦接至触敏表面单元1502的处理单元1506。在一些实施例中,处理单元1506包括显示使能单元1508、检测单元1510、递送单元1512、子事件处理单元1514、更新单元1516和延迟单元1518。处理单元1506被配置为使能显示多个视图中的一个或多个视图(如,使用显示使能单元1508),其中:一个或多个所显示的视图的第一视图包括多个手势识别器;第一视图中的多个手势识别器包括一个或多个代理手势识别器和一个或多个非代理手势识别器;每个手势识别器指示多个预定义状态中的一个状态;并且第一视图中的第一代理手势识别器指示与不在第一视图中的相应的非代理手势识别器的状态对应的状态。处理单元1506被配置为检测一个或多个子事件的序列(如,使用检测单元1510)。处理单元1506被配置为将相应的子事件递送至不在第一视图中的相应的非代理手势识别器和第一视图中的一个或多个非代理手势识别器的至少子组(如,使用递送单元1512)。处理单元1506被配置为根据第一视图中的第一代理手势识别器的状态和一个或多个非代理手势识别器的至少子组的状态来处理相应的子事件(如,使用子事件处理单元1514)。在一些实施例中,处理单元1506被配置为更新第一视图中的第一代理手势识别器的状态,以匹配不在第一视图中的相应的非代理手势识别器的状态(如,使用更新单元1516)。在一些实施例中,处理相应的子事件包括用第一视图中的一个或多个非代理手势识别器中的至少一个非代理手势识别器来处理相应的子事件(如,子事件处理单元1514)。在一些实施例中,第一视图中的一个或多个非代理手势识别器中的至少第一非代理手势识别器适于在识别与一个或多个子事件的序列对应的手势之前在第一视图中等待第一代理手势识别器进入一个或多个预定义状态中的特定预定义状态。在一些实施例中,处理单元1506被配置为延迟第一视图中的一个或多个非代理手势识别器中的至少第一非代理手势识别器识别与一个或多个子事件的序列对应的手势,直到第一代理手势识别器进入一个或多个预定义状态中的特定预定义状态之后(如,使用延迟单元1518)。在一些实施例中,所述一个或多个预定义状态包括以下中的一个或多个:事件不可能状态和事件取消状态。在一些实施例中,第一视图中的一个或多个非代理手势识别器中的至少第二非代理手势识别器适于延迟将一个或多个子事件的序列中的一个或多个子事件递送至第一视图,直到第二非代理手势识别器无法识别与一个或多个子事件的序列对应的手势之后。在一些实施例中,处理单元1506被配置为延迟将一个或多个子事件的序列中的一个或多个子事件递送至第一视图,直到第一视图中的第二非代理手势识别器无法识别与一个或多个子事件的序列对应的手势之后(如,使用延迟单元1518)。在一些实施例中,第一视图中的多个手势识别器包括第二代理手势识别器;第一视图中的第二代理手势识别器指示与不在第一视图中的相应的非代理手势识别器的状态对应的状态。在一些实施例中,所述多个视图在视图分级结构中;并且相应的非代理手势识别器在视图分级结构中不同于第一视图的第二视图中。在一些实施例中,第一视图中的一个或多个非代理手势识别器和不在第一视图中的相应的非代理手势识别器与相同的软件应用程序相关联。在一些实施例中,第一视图中的一个或多个非代理手势识别器与软件应用程序相关联;不在第一视图中的相应的非代理手势识别器与不同于软件应用程序的系统软件相关联。出于解释的目的,前面的描述是通过参考具体实施例来进行描述的。然而,上面的示例性的讨论并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施例是为了充分阐明本发明的原理及其实际应用,以由此使得本领域的其他技术人员能够以适合于所构想的特定用途的各种修改来充分利用本发明以及各种实施例。当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1