1.一种用于滚动穿过媒体项的方法,所述方法包括:
在触摸屏上显示多个媒体项;
在触摸屏上检测在所显示的多个媒体项中的至少一个之上的初始触击;
响应于在所显示的多个媒体项之上检测到的初始触击,使虚拟滚动轮出现,所述虚拟滚动轮可由初始触击之后在虚拟滚动轮上检测到的旋转运动触击事件操纵;
确定是否执行了相对于所述虚拟滚动轮的触击区域的旋转运动触击事件;
当执行了所述旋转运动触击事件时,滚动穿过所述多个媒体项;
检测第二触击,所述第二触击至少部分地与所述初始触击同时发生;以及响应于所述第二触击,启动图形用户界面元素。
2.根据权利要求1所述的方法,其中使所述虚拟滚动轮出现包括:
显示虚拟滚动轮并启用所述虚拟滚动轮的功能,所述虚拟滚动轮提供一个触击区域,所述旋转运动触击事件可在此区域中被执行以便穿过所述多个媒体项。
3.根据权利要求2所述的方法,还包括:
当没有执行触击事件时使所述虚拟滚动轮无效,使所述虚拟滚动轮无效包括禁用所述虚拟滚动轮的功能并将所述虚拟滚动轮从触摸屏移除。
4.根据权利要求3所述的方法,其中使用从突然出现、增大和淡入中选择的过渡效果执行在所述触摸屏上显示虚拟滚动轮,以及其中使用从淡出、缩小和突然消失中选择的过渡效果执行从触摸屏移除虚拟滚动轮。
5.根据权利要求2所述的方法,其中使用从突然出现、增大和淡入中选择的过渡效果,显示所述虚拟滚动轮。
6.根据权利要求5所述的方法,其中所述过渡效果促使所述虚拟滚动轮增大,最初显示一个较小的虚拟滚动轮,并在此后持续增大所述虚拟滚动轮,直到所述虚拟滚动轮达到最终尺寸。
7.根据权利要求2、5和6中任意一个权利要求所述的方法,其中在所述多个媒体项之上显示所述虚拟滚动轮,并且所述虚拟滚动轮是半透明的,使得布置在所述虚拟滚动轮的下面的所述多个媒体项透过所述虚拟滚动轮可以被看见。
8.根据权利要求1-6中任意一个权利要求所述的方法,其中所述虚拟滚动轮提供一个或多个虚拟按钮,并且其中所述方法还包括:
确定是否执行了相对于所述虚拟滚动轮的所述一个或多个虚拟按钮的选择触击事件;
以及
当在特定的按钮上执行了所述选择触击事件时,实现与所述特定按钮相关的动作。
9.根据权利要求8所述的方法,其中所述一个或多个虚拟按钮至少包括由所述触击区域围绕的中心按钮。
10.根据权利要求9所述的方法,其中所述虚拟滚动轮是圆形。
11.根据权利要求1-6中任意一个权利要求所述的方法,其中确定是否执行了相对于所述虚拟滚动轮的所述触击区域的触击事件的所述步骤包括:
检测至少一个手指出现在所述触击区域之上;
设置所述手指的初始位置;以及
监视手指相对于所述初始位置的移动。
12.根据权利要求1-6中任意一个权利要求所述的方法,其中所述媒体项是歌曲列表。
用于触敏输入设备的基于模式的图形用户接口\n[0001] 本申请是申请日为2005年7月19日、申请号为200580029108.2、发明名称为“用于触敏输入设备的基于模式的图形用户接口”的发明专利申请的分案申请。\n技术领域\n[0002] 本发明通常涉及与触敏设备相关的手势表示。\n背景技术\n[0003] 现今存在许多种类型的输入设备用于执行计算机系统中的操作。操作通常对应于在显示屏幕上移动光标并作出选择。操作也可能包括翻页、滚动、扫视、缩放等等。举例来说,输入设备可包括按钮、开关、键盘、鼠标、跟踪球、触摸板、控制杆、触摸屏等等。在设计计算机系统时都考虑了每一种这些设备的优点和缺点。\n[0004] 按钮和开关通常在本质上是机械的并提供有关光标移动和作选择的有限的控制。\n例如,它们通常专用于在特定方向上(例如,箭头键)移动光标或用于做特定的选择(例如,输入、删除、数量等)。\n[0005] 在鼠标方面,输入指示器的移动对应于当用户沿着一个表面移动鼠标时鼠标的相对移动。在跟踪球方面,输入指示器的移动对应于当用户在外壳内移动球时球的相对移动。\n鼠标和跟踪球还包括一个或多个按钮用于作出选择。鼠标还可以包括滚动轮,其允许用户通过简单地向前或向后滚动该轮移动穿过GUI。\n[0006] 利用触摸板,输入指示器的移动对应于当用户的手指沿触摸板的表面移动时用户的手指(或指示笔)的相对移动。另一方面,触摸屏是一种具有覆盖有屏幕的触敏透明面板的显示屏幕类型。当使用触摸屏时,用户通过直接指向屏幕上的GUI对象(通常使用指示笔或手指)在显示屏幕上作选择。\n[0007] 为了提供附加的功能,已经使用这些输入设备的某些实现了手势。举例来说,在触摸板中,当在触摸板的表面上检测到一次或多次轻敲时可作出选择。在某些情况下,可以轻敲触摸板的任何部分,而在另一种情况下可以轻敲触摸板的指定部分。除了用于选择,可通过利用触摸板的边界处的手指运动启动滚动。\n[0008] 转让给苹果计算机公司的U.S专利5,612,719和5,590,219描述了手势表示的一些其它用法。U.S专利5,612,719公开了一种对在屏幕上或在按钮附近作出的至少两种不同的按钮手势敏感的屏幕上的按钮。U.S专利5,590,219公开了一种用于识别计算机系统的显示屏幕上的椭圆型手势输入的方法。\n[0009] 近期,已经实现了更加高级的手势。例如,通过将四个手指放在触摸板以便识别滚动手势可以启动滚动并据此在触摸板上移动这些手指以执行滚动事件。然而,用于实现这些高级的手势的方法有几个缺点。举例来说,一旦设置了手势,则直到用户重置该手势状态其不能被改变。例如,以触摸板为例,如果四个手持等于滚动,并且用户在4个手指被识别之后放下拇指,则直到从触摸板抬起整只手并再次放下(例如,重置),将不会执行任何与包括四个手指和拇指的新的手势有关的动作。简单地说,用户不能在中途改变手势状态。同理,在任何给定的时刻仅可能执行一个手势。也就是说,不能够同时执行多个手势。\n[0010] 基于上述内容,存在改进在触敏设备上执行手势的方式的需求。\n发明内容\n[0011] 本发明有关手势以及使用触敏设备实现手势的方法。触敏设备的例子包括触摸屏和触摸板。本发明还有关用户接口以及使用显示屏实现用户接口的方法。\n[0012] 本发明可以以多种方式实现,包括实现为方法、图形用户接口、计算设备、或者计算机可读介质。下面讨论本发明的几个实施例。\n[0013] 在一个实施例中,本发明有关一种用户接口方法。该方法包括检测触击。该方法还包括当检测到触击时确定用户接口模式。该方法进一步包括基于该用户接口模式并且响应于所述检测到的触击,激活一个或多个GUI元素。\n[0014] 在一个实施例中,本发明有关一种用户接口方法。该方法包括显示一组媒体项。\n该方法还包括检测所显示的该组媒体项之上的触击。该方法进一步包括当在所显示的媒体项之上检测到触击时激活一个虚拟滚动轮。该虚拟滚动轮的激活包括显示并启用该虚拟滚动轮的功能,该虚拟滚动轮提供一个触击区域,在该区域用户旋转他们的手指以便穿过该组媒体项。该方法另外包括确定是否相对于该虚拟滚动轮的触击区域执行了触击事件。此外,该方法包括当执行了滚轮触击事件时滚动穿过该组媒体项。\n[0015] 在一个实施例中,本发明有关一种在用户操作的具有显示屏和触摸屏的电子设备上执行的方法。该方法包括确定是否检测到触击。该方法还包括当检测到触击时监视和分析当前操作条件。该方法还包括针对第一组操作条件激活第一GUI元素。该方法另外包括针对第二组操作条件激活第二GUI元素。\n[0016] 在一个实施例中,本发明有关一种在具有显示屏和触摸感应输入设备的计算设备上执行的方法。该方法包括感应触击。该方法还包括当检测到触击时显示和启用一个GUI元素。该GUI元素基于以下条件的至少一个:(a)设备该计算设备上当前运行的应用;(b)该应用的当前状态;和/或(c)该触击的一个或多个特性。该特性包括例如触击位置、触击ID、触击次数、以及触击运动。该方法进一步包括当其中一个以下事件发生时从显示屏禁止并移除该GUI元素:(a)没有再检测到触击,(b)在预置时间内没有检测到触击,(c)自从显示和启用步骤之后已过去了一段时间,(d)用户选择。\n[0017] 在另一个实施例中,本发明有关一种计算系统。该计算系统包括配置用于显示图形用户界面的显示设备。该线条还包括放置在该显示设备之上的触摸屏。该触摸屏配置用于检测在该显示设备之上发生的触击。该系统进一步包括可操作地连接到该显示设备和触摸屏的处理器。该处理器响应于触击指示该显示设备显示一个或多个GUI元素,并且当检测到相对于该显示的GUI元素的触击事件时执行与该GUI元素相关的动作。\n[0018] 在另一个实施例中,本发明有关一种计算系统。该计算系统包括处理器。该计算设备还包括能够感应触击事件的触摸屏。该计算设备进一步包括配置用于同时显示多个媒体项和虚拟滚动轮的显示屏。该虚拟滚动轮提供一个区域,在该区域触击事件被执行以便实现滚动动作。该滚动动作允许用户穿过该多个媒体项。\n[0019] 根据下面以本发明的原理实例示意的详细描述连同附图,本发明的其它方面和优点将变得明显。\n附图说明\n[0020] 根据以下连同附图的详细描述将易于理解本发明,其中同样的参考数字指示同样的结构元素,并且其中:\n[0021] 图1是根据本发明的一个实施例的计算机系统的框图;\n[0022] 图2是根据本发明的一个实施例的多点处理方法;\n[0023] 图3A和B举例说明了根据本发明的一个实施例的图像;\n[0024] 图4举例说明了根据本发明的一个实施例的特征组;\n[0025] 图5是根据本发明的一个实施例的参数计算方法;\n[0026] 图6A-6G举例说明了根据本发明的一个实施例的旋转手势;\n[0027] 图7是根据本发明的一个实施例的基于触击的方法的框图;\n[0028] 图8是根据本发明的一个实施例的基于触击的方法的框图;\n[0029] 图9是根据本发明的一个实施例的基于触击的方法的框图;\n[0030] 图10是根据本发明的一个实施例的缩放手势方法的框图;\n[0031] 图11A-11H举例说明了根据本发明的一个实施例的缩放时序;\n[0032] 图12是根据本发明的一个实施例的扫视方法的框图;\n[0033] 图13A-13D举例说明了根据本发明的一个实施例的扫视时序;\n[0034] 图14是根据本发明的一个实施例的旋转方法的框图;\n[0035] 图15A-15C举例说明了根据本发明的一个实施例的旋转时序;\n[0036] 图16是根据本发明的一个实施例的GUI操作方法的框图;\n[0037] 图17A-17E举例说明了根据本发明的一个实施例的浮动控制时序;\n[0038] 图18是根据本发明的一个实施例的GUI操作方法的框图;\n[0039] 图19A-19D举例说明了根据本发明的一个实施例的缩放目标时序;\n[0040] 图20是根据本发明的一个实施例的GUI操作方法的框图;\n[0041] 图21A-21D举例说明了根据本发明的一个实施例的页面翻转时序;\n[0042] 图22是根据本发明的一个实施例的GUI操作方法的框图;\n[0043] 图23A-23D举例说明了根据本发明的一个实施例的惯性时序;\n[0044] 图24是根据本发明的一个实施例的GUI操作方法的框图;\n[0045] 图25A-25D举例说明了根据本发明的一个实施例的键盘时序;\n[0046] 图26是根据本发明的一个实施例的GUI操作方法的框图;\n[0047] 图27A-27D举例说明了根据本发明的一个实施例的滚动轮时序;\n[0048] 图28是根据本发明的一个实施例的用户接口方法;\n[0049] 图29A-29D举例说明了根据本发明的一个实施例的过渡效果;\n[0050] 图30A-30D举例说明了根据本发明的另一个实施例的过渡效果;\n[0051] 图31A-31D举例说明了根据本发明的另一个实施例的过渡效果;\n[0052] 图32是根据本发明的一个实施例的确定方法;\n[0053] 图33是根据本发明的一个实施例的用户接口方法;\n[0054] 图34A-34F举例说明了根据本发明的一个实施例与图33所示的方法相关的时序;\n[0055] 图35A-35F举例说明了根据本发明的一个实施例与图33所示的方法相关的时序;\n[0056] 图36A-36C举例说明了根据本发明的一个实施例的用户接口时序;\n[0057] 图37是根据本发明的一个实施例的用户接口方法;\n[0058] 图38A-38J举例说明了根据本发明的一个实施例的用户接口时序。\n具体实施方式\n[0059] 本发明有关手势以及使用触敏设备实现手势的方法。触敏设备的例子包括触摸屏和触摸板。本发明还有关用户接口和使用显示屏实现用户接口的方法。本发明的一方面有关基于一个或多个条件确定用户接口模式。本发明的另一方面有关基于该用户接口模式激活一个或多个GUI元素(例如,显示一个GUI元素)。本发明的另一方面有关虚拟滚动轮。\n[0060] 下面参考图1-38J讨论本发明的这些和其它方面。然而,本领域的技术人员将很容易理解,在此给出的有关这些手势的详细描述是用于解释性目的,因为本发明延伸到这些有限的实施例之外。\n[0061] 图1是根据本发明的一个实施例的示例性计算机系统50的框图。计算机系统50可对应于个人计算机系统,诸如桌面型、膝上型、平板或手持计算机。计算机系统还可对应于诸如蜂窝电话、PDA、专用媒体播放器、消费类电子设备等等的计算设备。\n[0062] 图1所示的示例性计算机系统50包括配置用于执行指令并完成与计算机系统50相关的操作的处理器56。例如,利用例如从存储器获取的指令,处理器56可以控制计算机系统50的各组件之间输入和输出数据的接收和操纵。处理器56可以在单芯片、多芯片或多个电子元件上实现。例如,多种体系结构可被用于处理器56,包括专用或嵌入式处理器、专用处理器、控制器、ASIC等等。\n[0063] 在多数情况下,处理器56与操作系统一起操作以执行计算机代码并产生和使用数据。操作系统是众所周知的并将不再更加详细地描述。举例来说,操作系统可对应于OS/2、DOS、Unix、Linux、PalmOS等等。操作系统也可以是专用操作系统,如可能会用于有限用途的应用型计算设备。操作系统、其它计算机代码和数据可驻留在存储块58中,存储块\n58可操作地连接到处理器56。存储块58通常提供存储由计算机系统50使用的计算机代码和数据的地方。举例来说,存储块58可包括只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器等等。信息也可以驻留在可移动存储介质上并在需要时加载或安装到计算机系统50之上。可移动存储介质包括例如CD-ROM、PC-CARD、存储卡、软盘、磁带、以及网络组件。\n[0064] 计算机系统50还包括可操作地连接到处理器56的显示设备68。显示设备68可以是液晶显示器(LCD)(例如,有源矩阵,无源矩阵等)。或者,显示设备68可以是诸如单色显示器、彩色图形适配器(CGA)显示器、增强型图形适配器(EGA)显示器、可变图形阵列(VGA)显示器、超级VGA显示器、阴极射线管(CRT)等等。显示设备也可对应于等离子体显示器或以电子墨水实现的显示器。\n[0065] 显示设备68通常配置用于图形用户接口(GUI)69,GUI 69在计算机系统的用户和在其上运行的操作系统或应用之间提供一个易于使用的用户接口。一般来说,GUI 69以图形图像表示程序、文件和操作选项。图形图像可包括窗口、信息栏、对话框、菜单、图标、按钮、光标、滚动条等等。这种图像可以以预定布局排列,或可以适应用户所作出的特定动作动态被创建。在操作期间,用户可以选择并激活各种图形图像以便启动与之相关的功能和任务。举例来说,用户可以一个按钮以打开、关闭、最小化、或最大化一个窗口,或者选择一个图标以启动特定的程序。GUI 69另外或可选地可以为用户在显示设备68上显示诸如非交互式文本和图形的信息。\n[0066] 计算机系统50还包括可操作地连接到处理器56的输入设备70。输入设备70配置用于将数据从外部世界传送到计算机系统50中。输入设备70可以例如用于执行跟踪以相对于显示屏68上的GUI 69作出选择。输入设备70还可用于发出计算机系统50内的命令。输入设备70可包括配置用于接收来自用户的触击的输入的触摸感应设备并将这个信息发送给处理器56。举例来说,触摸感应设备可对应于触摸板或触摸屏。在多数情况下,触摸感应设备识别触敏表面上的触击以及触击的位置和大小。触摸感应设备将触击报告给处理器56,处理器56根据其的程序设计解释该触击。例如,处理器56可根据一个特定的触击启动一个任务。可使用专用处理器用于本地处理触击并减少对计算机系统的主处理器的需求。触摸感应设备可以基于各种感应技术,包括但不限于电容感应、电阻感应、表面声波感应、压力感应、光感应等等。此外,触摸感应设备可以基于单点感应或多点感应。单点感应能够仅辨别单个触击,而多点感应能够辨别同时发生的多个触击。\n[0067] 输入设备70可以是放置在显示屏68之上或之前的触摸屏。触摸屏70可以与显示设备68集成在一起或者可以是单独的部件。触摸屏70相比诸如触摸板、鼠标等的输入技术有几个优点。其一,触摸屏70位于显示屏68的前面并由此用户能够直接操纵GUI 69。\n例如,用户可以简单地将手指放到想要控制的对象的上面。在触摸板内,没有诸如此类的一对一关系。就触摸板来说,触摸板典型地放置在远离显示屏的不同的平面。例如,显示屏典型地位于垂直屏幕而触摸板典型地位于水平平面。这使得其的使用不是很直观,并由此当与触摸屏相比时更加难于使用。除了触摸屏之外,输入设备70可以是多点输入设备。由于它们能够识别一个以上的对象(手持)多点输入设备比传统的单点设备更具优势。单点设备不能识别多个对象。举例来说,在在此结合作为参考的待审并共同转让的美国专利申请No.:10/840,862中更加详细地示意和描述了在此可使用的多点触摸屏。\n[0068] 计算机系统50还包括连接到一个或多个I/O设备80的能力。举例来说,I/O设备80可对应于键盘、打印机、扫描仪、照像机、扬声器等等。I/O设备80可以与计算机系统\n50集成在一起或者它们可以是单独的部件(例如,外围设备)。在某些情况下,I/O设备80可以通过有线连接(例如电缆/端口)连接到计算机系统50。在其它情况下,I/O设备80可以通过无线连接连接到计算机系统50。举例来说,数据链路可对应于PS/2、USB、IR、RF、蓝牙等等。\n[0069] 根据本发明的一个实施例,计算机系统50被设计用于识别应用到输入设备70的手势85并基于手势85控制计算机系统50的各方面。在某些情况下,手势被定义为映射到一个或多个特定计算操作的仿效的与输入设备的交互。可以通过不同的手并且尤其是手持运动更加做出手势85。可选或另外地,可以使用指示笔作出手势。在所有的这些情形中,输入设备70接收手势85而处理器56执行指令以完成与手势85相关的操作。此外,存储块\n58可包含手势运算程序88,其可以是操作系统的一部分或者是单独的应用程序。手势运算程序88通常包含一组指令,其识别手势85的发生并通知手势85的软件代理和/或响应于手势85采取什么行动。\n[0070] 当用户执行了一个或多个手势,输入设备70将手势信息中继到处理器56。利用来自存储器58,或者更特别地手势运算程序88的指令,处理器56解释手势85并基于手势\n85控制计算机系统50的不同组件,如存储器58、显示屏68以及I/O设备80。手势85可以被识别为用于执行存储在存储器58中的应用中的动作的命令,修改在显示屏68上显示的GUI对象,修改存储在存储器58中的数据,和/或用于执行I/O设备80中的动作。举例来说,命令可以是与缩放、扫视、滚动、翻页、旋转、大小调整等有关。作为更进一步的例子,该命令还可以与启动特定程序、打开文件或文档、查看菜单、作出选择、执行指令、登录到计算机系统、允许授权个人对计算机系统的限制区域的访问、加载与用户的计算机桌面的排列喜好有关的用户简表文件等等有关。\n[0071] 可以利用范围广泛的不同手势。举例来说,手势可以是单点或多点手势;静态的或动态的手势;连续或分段的手势;等等。单点手势是那些利用单个接触点执行的手势,例如,使用例如来自单个手指、手掌或指示笔的单个触击执行的手势。多点手势是能够使用多点执行的那些手势,例如,利用多个触击执行的手势,例如来自多个手指、手指和手掌、手指和指示笔、多触指和/或它们的任何组合的多个触击。静态手势是不包含运动的那些手势,而动态手势是包含有运动的那些手势。连续的手势是在单次触击内执行的那些手势,而分段手势是在各别步骤或敲击顺序内执行的那些手势。\n[0072] 在一个实施例中,计算机系统50配置用于同时注册多个手势,即可同时执行多个手势。举例来说,在旋转手势的同时可以执行缩放手势,或在扫视手势的同时可以执行旋转手势。在一个具体实现中,缩放、旋转和扫视手势可全部同时发生以便同时执行缩放、旋转和扫视。\n[0073] 在另一个实施例中,系统被配置用于立即识别手势因此可以在该手势,即同时并列发生的手势和动作的同时实现与该手势相关联的动作,而不会是一个两步骤的过程。举例来说,在滚动手势期间,屏幕随手指的运动而移动。\n[0074] 在另一个实施例中,在显示屏68上呈现的对象连续跟随在触摸屏上发生的手势。\n在该被执行的手势和在显示屏68上显示的对象之间存在一对一的关系。例如,当手势被执行时,位于该手势下面的对象同时发生改变。例如,在缩放手势期间,手指可舒展开或靠近以便使显示屏68上显示的对象在舒展开的期间放大而在靠近的期间缩小。在这个操作期间,计算机系统50识别用户输入为缩放手势,确定该采取什么行动,并输出控制数据到适当的设备,在本实例中为显示屏68。\n[0075] 在另一个实施例中,计算机系统50提供区域敏感性,其中当在输入设备68的不同区域之上实现时手势意味着不同的事情。例如,音量旋纽之上的旋转手势引起音量增大/降低,而照片上的旋转手势促使照片旋转。\n[0076] 在另一个实施例中,与触摸屏接触的手指的数量可指示一个输入模式。例如,单个手指的单次触击可指示想要执行跟踪,即指针或光标移动,或选择,而一组手指的多个触击可指示想要执行手势表示。用于实现手势表示的手指的数据可以是多种多样的。举例来说,两个手指可指示第一手势模式,三个手指可以指示第三手势模式等等。或者,任何数量的手指,即多于一个的手指,都可以用于可包括一个或多个手势控制的同一个手势模式。手指的方向同样可用于表示所想要的模式。可以检测手指轮廓以基于例如用户是否已经使用了他的拇指或食指来允许不同的模态操作。\n[0077] 在另一个实施例中,当连续在输入设备上敲击而不停止该敲击(例如,抬离触敏表面)的时候可以改变输入。在一个实施例中,用户可以在进行敲击的时候从跟踪(或选择)模式切换到手势表示表示。例如,跟踪或选择可与单个手指相关联而手势表示可以与多个手指相关联;因此,通过抬起并将第二个手指放到触摸屏上面用户可以在跟踪/选择和手势表示之间来回切换。在另一个实施例中,用户可以在进行敲击时从一种手势模式切换到另一种手势模式。例如,缩放可与展开一对手指相关联而旋转可与旋转该对手指相关联;因此,通过改变他们的手指在展开和旋转之间移动用户可以在缩放和旋转之间来回切换。在还一个实施例中,在进行敲击的时候可以改变手势输入的数量(例如,增加或减少)。\n例如,在手指分散开的缩放期间,用户可进一步旋转他们的手指以启动缩放和旋转二者。此外,在缩放和旋转期间,用户可停止展开他们的手指以便仅发生旋转。换句话说,手势输入可以是连续的输入,或同时或连续地。\n[0078] 在一个特定的实施例中,单个手指启动跟踪(或选择)而两个或更多个手指以相互靠近激活滚动或扫视。通常优选两个手指以便提供一个或两个手指之间容易的来回切换,即,用户可通过简单地抬起或放下另外的手指非常容易地在模式之间切换。这具有比其它形式的切换模式更为直观的优点。在跟踪期间,光标的移动是由用户在触摸感应设备的触敏表面上移动单个手指控制的。触摸感应设备的传感器设备解释该手指运动并生成用于产生光标在显示屏上相应的移动的信号。在滚动期间,屏幕移动是由用户在触摸感应设备的触敏表面上移动两个手指控制的。当组合的手指在垂直方向上移动,该运动被解释为垂直滚动事件,而当该组合的手指在水平方向上移动,则该运动被解释为水平滚动事件。也可为扫视陈述同样的内容,尽管扫视可发生在除了仅仅是水平和垂直方向之外的所有方向上。\n[0079] 在此使用的术语“滚动”通常适合穿过显示屏上的显示区移动所显示的数据或图像(例如,文本或图片)以便在该显示区内看见新的数据集(例如,文本行或图像)。在多数情况下,一旦显示区被填满,则每个新的数据集出现在该显示区的边缘并且所有其它的数据集腾出一个空位。也就是说,由于每个移出显示区的数据集显示该新的数据集。本质上,滚动功能允许用户查看当前位于显示区之外的连续的数据集。显示区可以是显示屏的整个显示区域或其仅仅是显示屏的一部分(例如,窗体)。\n[0080] 如上所提及,可以实现垂直(上或下)或水平(左或右)滚动。在垂直滚动的情况下,当用户向下滚动时,每个新的数据集出现在显示区的底部而所有其它的数据集向上移动一个位置。如果显示区被填满,则顶部的数据集移出显示区。同样地,当用户向上滚动时,每个新的数据集出现在显示区的顶部而所有其它的数据集向下移动一个位置。如果显示区被填满,则底部的数据集移出显示区。\n[0081] 举例来说,在操作期间,显示屏可以显示媒体项(例如,歌曲)列表。通过移动她或他的手指越过触摸屏用户能够线性地滚动穿过该媒体项列表。当手指移动越过触摸屏时,自媒体项列表所显示的项目被改变以便用户能够有效滚动穿过该媒体项列表。在多数情况下,用户通过以更快的速度移动他或她的手指能够加速他们的媒体项列表的遍历。下面更加详细地描述可能与上述例子有关的一些实施例。参见例如图6、23、27。\n[0082] 图2是根据本发明的一个实施例的多点处理方法100。多点处理方法100可例如在图1所示的系统中执行。多点处理方法100通常开始于块102,在此从多点输入设备(并且更特别地是从多点触摸屏)读入图像。举例来说,多点触摸屏通常可对应在此结合作为参考的共同未决的美国专利申请No.:10/840,862中公开的多点触摸屏。尽管使用了术语“图像”应当注意数据可来自其它形式。在多数情况下,读自触摸屏的图像提供幅度(Z)作为触摸屏的每个感应点或像素的位置(x和y)的函数。该幅度可以例如反映在每个点测量的电容。\n[0083] 在块102之后,多点处理方法100继续进行到块104,在此图像被转换为集合或特征列表。每个特征代表清晰的输入,如触击。在多数情况下,每个特征包含其自身的唯一标识符(ID)、x坐标、y坐标、Z幅度、角度θ、面积A等等。举例来说,图3A和3B及时示意了特定的图像120。在图像120中,基于两个清晰的触击有两个特征122。该触击可以例如由一对手指触击显示屏形成。如图所示,每个特征122都包括唯一标识符(ID)、x坐标、y坐标、Z幅度、角度θ和面积A。更特别地,第一特征122A由ID1,x1,y1,θ1,A1表示,而第二特征122B由ID2,x2,y2,θ2,A2表示。这个数据可例如利用多触击协议输出。\n[0084] 从数据或图像到特征的转换可以利用在此结合作为参考的共同待审的美国专利申请No.:10/840,862中描述的方法完成。如在该专利申请中所公开的,原始数据被接收。\n该原始数据典型地是数字化了的形式,并且包含触摸屏每个节点的值。该值可以在0和256之间其中0相当于没有触压而256相当于完全触压。其后,过滤原始数据以降低噪声。一旦过滤了噪声,生成指示所连接的点的每个组的拓扑结构的斜率数据。其后,基于该斜率数据计算每个接触区域的边界,即,确定哪些点被组合在一起以形成每个接触区域。举例来说,可能使用一个流域算法。一旦确定了边界,就可以计算每个接触区域的数据(例如,x,y,Z,θ,A)。\n[0085] 在块104之后,多点处理方法100继续进行到块106,在此执行特征分类和分组。\n在分类期间确定每个特征的同一性。例如,特征可被分类为特定的手指,拇指、食指或其它对象。一旦分类后就可以分组特征。在其中形成分组的方式可广泛变化。在多数情况下,特征是基于某些标准(例如,它们带有类似的属性)分组的。例如,可以将图3A和3B所示的两个特征分组到一起,因为这些特征的每一个相互位置接近或者因为它们来自同一只手。分组可以包括某种级别的过滤以便滤除不是触击事件的一部分的特征。在过滤中,因为它们或者符合某些预定的标准或者因为它们不符合某些标准可以拒绝一个或多个特征。\n举例来说,该特征的其中之一可以被分类为位于图形输入板PC边缘的拇指。因为拇指被用于拿着设备而不是用于执行任务,从其中生成的特征被拒绝,即,不认为是被处理的触击事件的一部分。\n[0086] 在块106之后,该多点处理方法100继续进行到块108,在此为该特征组计算关键参数。关键参数可包括特征之间的距离、所有特征的x/y矩心、特征旋转、分组的总压力(例如,矩心处的压力)等等。如图4所示,该计算可包括查找矩心C、从矩心C画虚线130到每个特征、定义每条虚线的距离D(D1和D2),并接着平均距离D1和D2。一旦计算了参数就报告参数值。该参数值典型地与组标识符(GID)和每个组内的特征数量(在这个情形中为3)一同报告。在多数情况下,既报告初始的也报告当前的参数值。初始参数值可以基于放下,即当用户将他们的手指放到触摸屏上时,而当前值可以基于在放下之后发身的敲击内的任何点。如应当是适当的那样,块102-108在用户敲击期间被重复执行由此生成许多顺序地配置的信号。该初始和当前参数可在随后的步骤中比较以执行系统中的动作。\n[0087] 在块108之后,该处理流程继续进行到块110,在此分组是或者与用户接口(UI)元素有关。UI元素是按钮框、列表、滑动块、轮子、旋纽等。每个UI元素代表用户接口的一个组件或控制。UI元素之后的应用具有到在块108中计算的参数数据的入口。在一个实现中,应用归类对应到其处的UI元素的触击数据的关联性。归类可以基于某些预定的标准。\n该归类可包括产生质量因数,并且无论哪一个UI元素具有最高的质量因数,给予其唯一对该分组的访问。甚至还可能有某种程度的磁滞现象(一旦其中一个UI元素要求了该组的控制,则该组不离开该UI元素直到另一个UI元素具有更加高的等级)。举例来说,归类可包括确定矩心(或特征)对与该UI元素相关的GUI对象的接近性。\n[0088] 在块110之后,该多点处理方法100继续进行到块112和114。块112和114可大约在同时被执行。从用户的观点看,在一个实施例中,块112和114看起来是同时执行的。\n在块112,基于初始和当前参数值以及它们与之关联的UI元素之间的差异执行一个或多个动作。在块114,提供与被执行的一个或多个动作有关的用户反馈。举例来说,用户反馈可以包括显示、音频、触觉反馈等等。\n[0089] 图5是根据本发明的一个实施例的参数计算方法150。参数计算方法150可以例如对应于图2所示的块108。参数计算方法150通常开始于块152,在此接收到一组特征。\n在块152之后,参数计算方法150继续进行到块154,在此作出特征组内的特征数量是否改变的判断。例如,由于用户抬起或放下另一个手指特征的数量可能已经被改变。可能需要不同的手指以执行不同的控制(例如,跟踪,手势表示)。如果特征数量改变,则参数计算方法150继续进行到块156,在此计算初始参数值。如果特征数保持不变,参数计算方法150继续进行到块158,在此计算当前参数值。其后,参数计算方法150继续进行到块160,在此报告初始和当前参数值。举例来说,初始参数可包含各点之间的平均初始距离(或初始距离(AVG)),而当前参数值可包含各点之间的平均当前距离(或当前距离(AVG))。可在后续的步骤内比较这些值以便控制计算机系统的各方面。\n[0090] 上述的方法和技术可被用于实现任何数量的GUI接口对象和动作。例如,可以创建手势以检测和影响一个用户命令以调整窗口大小、滚动显示屏、旋转对象、放大或缩小所显示的区域、删除或插入文本或其它对象等等。手势还可用于调用和操作虚拟控制接口,诸如音量旋纽、开关、滑动块、手柄、旋纽、门、以及其它可以被创建用于使人与计算系统的交互便利的小部件。\n[0091] 为了引用利用上述方法学的例子并且参考图6A~6G,将描述用于控制图形输入板PC 175的显示屏174的GUI接口172上的虚拟音量旋纽。为了启动旋纽170,用户将他们的手指176放到多点触摸屏178上。该虚拟控制旋纽可以是已经被显示了的,或者该特定的手指数量、方向或轮廓放下,或者其后立即的手指的运动,或者用户的交互的这些和其它特性的某些组合可调用该虚拟控制旋纽被显示。不论发生哪一种情况,计算系统都使手指组与该虚拟控制旋纽相关联并作出用户意欲使用该虚拟音量旋纽的判断。这种相关也可部分基于计算设备在输入时刻的模式或当前状态。例如,如果歌曲当前正在计算设备之上播放则同样的手势可或者被解释为音量了解手势,或者如果当前正在执行对象编辑应用则解释为旋转命令。也可提供其它的用户反馈,包括例如听觉或触觉反馈。\n[0092] 一旦如图6A所示显示了旋纽170,用户的手指176就可围绕旋纽170放置,就象有一个真实的旋纽或刻度盘,并且其后能够围绕旋纽170旋转以便模拟旋转旋纽170。此外,当旋纽170被“旋转”时可以提供例如单击声音形式的听觉反馈或者振动形式的触觉反馈。\n用户还可使用他们的另外一只手以握住图形输入板PC 175。\n[0093] 如图6B所示,多点触摸屏178检测至少一对图像。特别地,手指放下时创建第一图像180,而当手指176旋转时创建至少一个其它的图像182。尽管仅示出了两个图像,在多数情况下在这两个图像之间可能有增量出现的更多的图像。每个图像表示手指在特定的瞬时时刻与触摸屏接触的轮廓。这些图像也可被称为触击图像。应理解,术语“图像”并不意味着在屏幕178之上显示该轮廓(而是由触摸感应设备成像)。应注意的是,尽管使用了术语“图像”,数据可以是不同时刻代表触摸平面的其它形式。\n[0094] 如图6C所示,每个图像180和182被转换为特征184的集合。每个特征184与例如来自围绕旋纽170的每个手指176的指尖以及用于握住图形输入板PC 175的另一只手\n177的拇指的特定的触击有关。\n[0095] 如图6D所示,特征184被分类,即,每个手指/拇指被识别并针对每个图像180和\n182分组。在这个特定情况下,与旋纽170相关的特征184A被分组到一起以形成组188,而与拇指相关的特征184B被滤除。在可选方案中,拇指特征184B可单独地作为各别的特征(或在其它的组中),例如,为了修改该系统的输入或运行模式或者为了实现其它的手势,例如在拇指(或者其它的手指)的区域内的屏幕上显示的与均衡器滑动块相关的滑动块手势。\n[0096] 如图6E所示,为每个图像180和182计算特征组188的关键参数。与第一图像\n180有关的关键参数代表初始状态而第二图像182的关键参数代表当前状态。\n[0097] 同样如图6E所示,由于其接近于旋纽170,旋纽170是与手势组188有关的UI元素。其后,如图6F所示,比较来自每个图像180和182的特征组188的关键参数值以确定旋转向量,即,该特征组从初始到当前状态顺时针旋转5度。在图6F中,初始特征组(图像\n180)以虚线示意而当前特征组(图像182)以实线示意。\n[0098] 如图6G所示,基于旋转向量,图形输入板PC 175的扬声器192根据手指176的旋转量增大(或降低)其的输出,即基于旋转5度增大音量5%。图形输入板PC的显示屏\n174还可以根据手指176的旋转量调节旋纽170的旋转,即,旋纽170的位置旋转5度。在多数情况下,旋纽的旋转与手指的旋转是同时发生的,即,手指每旋转1度则旋纽旋转1度。\n大体上,虚拟控制旋纽跟随发生在屏幕上的手势。更进一步,图形输入板PC的音频单元194可为每个旋转单元提供单击声,例如,根据5度的旋转提供5次单击。再进一步地,图形输入板PC 175的触觉单元196可以为每次单击提供一定数量的振动或者其它的触觉反馈由此模拟真实的旋纽。\n[0099] 应注意,可以与虚拟控制旋纽手势一同同时执行附加的手势。例如,利用两只手可同时控制一个以上的虚拟控制旋纽,即,每个虚拟控制旋纽使用一只手。可选和附加地,可以同时控制一个或多个滑动条作为虚拟控制按钮,即,一只手操作该虚拟控制旋纽,而相反的那只手的至少一个手指以及可能一个以上的手指操作至少一个滑动块以及可能一个以上的滑动条,例如,每个手指一个滑动条。\n[0100] 还应注意,尽管本实施例是利用虚拟控制旋纽描述的,在另一个实施例中,UI元素可以是虚拟滚动轮。作为一个例子,虚拟滚动轮可以模仿在此结合作为参考的美国专利申请Nos.:2003/0076303A1、2003/0076301A1、2003/0095096A1中描述的那些真实的滚动轮。\n例如,当用户将他们的手指放到虚拟滚动轮的表面上并作出旋转、转动或切线手势运动,可相对窗口中显示的项目列表执行滚动动作。\n[0101] 图7是根据本发明的一个实施例的基于触击的方法200的框图。该方法通常开始于块202,在此检测到发生在多点感应设备之上的用户输入。用户输入包括一个或多个触击输入,每个触击输入具有一个唯一的标识符。在块202之后,基于触击的方法200继续进行到块204,在此当用户输入包括单个唯一标识符(一次触击输入)时用户输入被分类为跟踪或选择输入,或者当用户输入包括至少两个唯一标识符(一个以上的触击输入)时分类为手势输入。如果用户输入被分类为跟踪输入,则基于触击的方法200继续进行到块206,在此执行对应于用户输入的跟踪。如果用户输入被分类为手势输入,则基于触击的方法200继续进行到块208,在此执行对应于该用户输入的一个或多个手势控制动作。该手势控制动作至少部分基于与该至少两个唯一标识符一同或之间发生的改变。\n[0102] 图8是根据本发明的一个实施例的基于触击的方法250的框图。基于触击的方法\n250通常开始于块252,在此当输入在触敏表面上敲击期间捕获一个初始图像。在块252之后,基于触击的方法250继续进行到块254,在此基于该初始图像确定触击模式。例如,如果该初始图像包括单个唯一标识符则触击模式可对应于跟踪或选择模式。另一方面,如果该图像包括一个以上的唯一标识符,则触击模式可对应于手势模式。在块254之后,基于触击的方法250继续进行到块256,在此当输入在触敏表面上敲击期间捕获下一个图像。在敲击期间图像典型地是顺序捕获的并由此可能有多个图像与该敲击有关。在块256之后,基于触击的方法250继续进行到块258,在此作出在捕获初始图像和捕获下一个图像之间该触击模式是否改变的判断。如果触击模式改变了,则基于触击的方法250继续进行到块260,在此该下一个图像被设置为初始图像并且其后在块254基于该新的初始图像再次确定该触击模式。如果该触击模式保持不变,则基于触击的方法250继续进行到块262,在此比较该初始图像和下一个图像并且基于该比较生成一个或多个控制信号。\n[0103] 图9是根据本发明一个实施例的基于触击的方法300的框图。基于触击的方法\n300开始于块302,在此输出一个GUI对象。例如,处理器可以指示显示屏显示一个特定的GUI对象。在块302之后,基于触击的方法300继续进行到块304,在此在该GUI对象之上接收到手势输入。例如,用户在触摸屏的表面并且当越过所显示的GUI对象的时候以一种手势的方式放置或移动他们的手指。该手势的输入方式可包括连续发生的一个或多个单个手势或者同时发生的多个手势。每个手势通常有与之相关的特定顺序、运动或方向。例如,一个手势可包括展开手指或合闭手指、旋转手指、平移手指等等。\n[0104] 在块304之后,基于触击的方法300继续进行到块306,在此基于手势输入修改该GUI对象并与手势输入一致。通过修改,意味着根据正被执行的特定的一个手势或多个手势改变GUI对象。与其一致,意思是当该手势或多个手势正被执行的时候近似发生改变。在多数情况下,在手势和GUI对象处发生的改变之间存在一对一的关系并且它们基本上是同时发生的。大体上,GUI对象紧随在手指的运动之后。例如,展开手指可同时放大该对象、合闭手指可同时缩小GUI该对象、旋转手指可同时旋转该对象、平移手指可以允许同时扫视或滚动该GUI对象。\n[0105] 在一个实施例中,块306可包括确定哪一个GUI对象与被执行的手势有关,并在其后锁定该显示的对象到放置到其上的手指使得GUI对象根据该手势输入改变。通过锁定或使手指与GUI对象相关,GUI对象可同时根据手指正在触摸屏上所做的动作调整自己。通常该确定和锁定发生在手指放下时,即,当手指被放到触摸屏上面时。\n[0106] 图10是根据本发明的一个实施例的缩放手势方法350的框图。缩放手势方法350可以在多点触摸屏上执行。缩放手势方法350通常开始于块352,在此在触敏表面同时检测到至少一个第一手指和第二手指的出现。该至少两个手指的出现被配置用于指示该触击是一个手势的触击而不是基于一个手指的跟踪触击。在某些情况下,仅出现两个手指指示该触击是一个手势触击。在其它情况下,任何多于两个的手指数量均指示该触击是一个手势触击。事实上,手势触击可被配置用于操作无论是两个、三个、四个或更多个的手指正在触摸,并且甚至在该手势期间数量改变了,即,在手势期间的任何时刻仅需要最少两个手指。\n[0107] 在块352之后,缩放手势方法350继续进行到块354,在此比较至少该两个手指之间的距离。距离可以是手指到手指或每个手指到某些其它的例如矩心的参考点的距离。如果该两个手指之间的距离增大(展开),则如在块356中所示生成放大信号。如果该两个手指之间的距离减小(合闭),则如在块358中所示生成缩小信号。在多数情况下,放下手指将锁定该手指到被显示的特定GUI对象或使其与之相关联。例如,触敏表面可以是一个触摸屏,并且GUI对象可被显示在该触摸屏之上。这典型地发生在当至少其中一个手指被放置到GUI对象之上。结果,当手指散开移动时,该放大信号可被用于增大GUI对象中嵌入特征的大小,而当手指收缩到一起时,该缩小信号可被用于减小该对象中嵌入特征的大小。缩放典型地发生在如显示屏的周边、窗口的周边、GUI对象的边缘等的预定边界之内。该嵌入式特征可以在多个层上形成,每个层表示不同级别的缩放。在多数情况下,缩放量根据该两个对象之间的距离变化。此外,缩放典型地可与对象的运动基本上同时发生。例如,当手指展开或合闭时,对象同时放大或缩小。虽然本方法是针对缩放的,应注意的是其也可以用于增大或降低。缩放手势方法350在诸如出版、图片、和绘图程序的图形程序中特别有用。此外,缩放可用于控制诸如照像机的外围设备,即,当手指展开时,照像机拉远,而当手指靠拢时照像机拉近。\n[0108] 图11A~11H举例说明了使用上述方法的缩放时序。图11A举例说明了一个显示屏,其展示了具有嵌入级别的北美洲地图形式的可被缩放的GUI对象364。在某些情况下,如图所示,GUI对象位于形成GUI对象364的边界的一个窗口之内。图11B举例说明了用户将他们的手指366放置到北美洲368的一个区域,特别地是美国370以及更特别地加利福尼亚洲372之上。为了在加利福尼亚洲372上放大,用户如图11C所示开始展开他们的手指366。随着手指366进一步展开时(距离增大),该地图在北加利福尼亚洲374上进一步放大,然后到北加利福尼亚洲374的特定区域,然后到海湾区域376,然后到半岛378(例如,旧金山和圣何塞地区之间的区域),然后如图11D~11H所示接着到位于旧金山和圣何塞之间的San Carlos市380。为了缩小San Carlos 380并回到北美洲368,手指沿与上述的顺序相反的顺序合闭回到一起。\n[0109] 图12是根据本发明的一个实施例的扫视方法400的框图。扫视手势可在多点触摸屏之上执行。扫视方法400通常开始于块402,在此在触敏表面上在同一时刻检测到至少一个第一对象和第二对象的出现。该至少两个手指的出现被配置用于指示该触击是手势触击而不是基于一个手指的跟踪触击。在某些情况下,仅出现两个手指指示该触击是一个手势触击。在其它情况下,任何多于两个的手指数量均指示该触击是一个手势触击。事实上,手势触击可被配置用于操作无论是两个、三个、四个或更多个的手指正在触摸,并且甚至在该手势期间数量改变了,即,仅需要最少两个手指。在块402之后,扫视方法400继续进行到块404,在此监视当目标穿越触摸屏移动到一起时该两个对象的位置。在块404之后,扫视方法400继续进行到块406,在此当两个对象的位置相对于初始位置改变时生成一个扫视信号。在多数情况下,放下手指将锁定该手指到显示在触摸屏上的特定GUI对象或使其与之相关联。典型地,当至少其中一个手指被放到GUI对象上的图像之上时。结果,当各手指越过触摸屏移动到一起时,该扫视信号可被用于在该手指的方向上平移图像。在多数情况下,平移量根据两个对象移动的距离而变化。此外,扫视典型地可与对象的运动基本上同时发生。例如,当手指移动的时候,对象随手指同时移动。\n[0110] 图13A~13D举例说明了基于上述的扫视方法400的扫视时序。利用图11的地图,图13A举例说明了用户将他们的手指366放到地图上。当放下时,手指300被锁定到该地图。如图13B所示,当手指366垂直向上移动时,整个地图364被向上移动由此致使先前看到的地图364的一部分将被放置到显示区以外而部分看不见的地图364被放置到显示区内。如图13C所示,当手指366水平向一旁移动时,整个地图364被向一旁移动由此致使先前看到的地图364的一部分将被放置到显示区以外而部分看不见的地图被放置到显示区内。如图13D所示,当手指366斜对角移动时,整个地图364被斜对角移动由此致使先前看到的地图364的一部分将被放置到显示区以外而部分看不见的地图被放置到显示区内。如应当理解的那样,地图364的运动遵循手指366的运动。整个过程类似于沿一张桌面滑动一页纸。手指施加到纸上的压力锁定纸张到手指并在当手指横越桌面滑动时,纸张随着它们移动。\n[0111] 图14是根据本发明的一个实施例的旋转方法450的框图。旋转手势可在多点触摸屏上执行。旋转方法450通常开始于块452,在此同时检测到一个第一对象和第二对象的出现。该至少两个手指的出现被配置用于指示该触击是手势触击而不是基于一个手指的跟踪触击。在某些情况下,仅出现两个手指指示该触击是一个手势触击。在其它情况下,任何多于两个的手指数量均指示该触击是一个手势触击。事实上,手势触击可被配置用于操作无论是两个、三个、四个或更多个的手指正在触摸,并且甚至在该手势期间数量改变了,即,仅需要最少两个手指。\n[0112] 在块452之后,旋转方法450继续进行到块454,在此设置每个手指的角度。角度典型地是相对于参考点确定的。在块454之后,旋转方法450继续进行到块456,在此当至少其中一个对象的角度相对于参考点改变时生成旋转信号。在多数情况下,放下手指将锁定该手指到显示在触摸屏上的特定GUI对象或使其与之相关联。典型地,当至少其中一个手指被放到GUI对象上的图像之上时,该GUI对象将与该手指相关联或被锁定到该手指。结果,当手指旋转时,该旋转信号可被用于以手指旋转的方向旋转该对象(例如,顺时针、逆时针)。在多数情况下,对象旋转的量根据手指旋转的量变化,即,如果手指移动5度则对象也移动5度。此外,旋转典型地可以与手指的运动基本上同时发生。例如,随着手指旋转,对象随手指同时旋转。\n[0113] 图15A~15C举例说明了基于上述的方法的旋转时序。利用图11的地图,图15A举例说明了用户将他们的手指366放到地图364之上。当放下时,手指366被锁定到地图\n364。如图15B所示,当手指366以顺时针方向旋转时,整个地图364根据该旋转的手指366在顺时针方向上旋转。如图15C所示,当手指366以逆时针方向旋转时,整个地图364根据该旋转的手指366在顺时针方向上旋转。\n[0114] 应注意的是,图10~15描述的方法可以在同一手势敲击期间实现。也就是说,在手势敲击期间可以执行所有的缩放、旋转和扫视,其可包括展开、旋转和滑动手指。例如,一旦放下至少两个手指,显示的对象(地图)就与该两个手指相关联或锁定。为了缩放,用户可展开或合上他们的手指。为了旋转,用户可旋转他们的手指。为了扫视,用户可滑动他们的手指。这些动作的每一个都可以以连续的动作同时发生。例如,用户可以展开和合闭他们的手指的同时横越触摸屏旋转和滑动手指。作为选择,用户可将这些动作分段而不必重置手势敲击。例如,用户可以首先展开他们的手指,然后旋转他们的手指,然后合闭他们的手指,然后滑动他们的手指等等。\n[0115] 图16是根据本发明的一个实施例的GUI操作方法500的框图。GUI操作方法500是为初始化GUI内的浮动控制配置的。GUI操作方法500通常开始于块502,在此检测诸如手指或拇指的对象的出现。这可例如利用触摸屏完成。在块502之后,GUI操作方法500继续进行到块504,在此对象被识别(找到了对象的标识符)。该对象可在多个对象之中被识别。例如,参见上面的图2的块104。\n[0116] 在块504之后,GUI操作方法500继续进行到块506,在此在对象的附近生成一个图像。该图像典型地是基于所识别的对象的。该图像可包括窗口、信息栏、对话框、菜单、图标、按钮、光标、滚动条等等。在某些情况下,用户可以选择并激活该图像(或其内嵌入的特征)以便启动功能和任务。举例来说,图像可以是用户接口元素或一组用户接口元素(例如,一个和多个打开、关闭、最小化、或最大化窗口的按钮)。该图像还可以是一个或多个图标,在当该图标被选择打开时运行特定的程序或文件。该图像另外可对应于非交互式文本和图形。在多数情况下,只要检测到对象就显示该图像或其可被显示一段预定数量的时间,即,在一段时间超时之后被移除。\n[0117] 在一个特定实施例中,图像包括一个或多个可由用户选择的控制选项。控制选项可包括一个或多个用于实现各种任务的控制按钮。例如,控制选项框可包括音乐收听控制按钮,例如播放、暂停、查找以及菜单。\n[0118] 图17A~17E举例说明了利用上述的方法的浮动控制时序。如图17A所示,用户\n510使用图形输入板PC 512并为此利用一只手514握住图形输入板PC 512同时利用另一只手516导航(例如,跟踪、手势表示)。如图17B所示,其接近于用户拿着图形输入板PC \n512,拿着的那只手514的部分拇指放在触摸屏520之上。如图17C所示,图形输入板PC \n512识别该拇指并在邻近该拇指显示一个控制框522。控制框522包括各种按钮524,其可以被用户的拇指选择以启动图形输入板PC 512内的任务。如图17D所示,当拿着图形输入板PC 512时,拇指延伸到其中一个按钮524之上并在随后轻敲由此选择与按钮524相关的任务。举例来说,该任务可能与启动一个程序或获得对网络的访问或改变设备的工作模式有关。控制框522合按钮524可被用于改变触摸屏520的输入模式使得例如与用户的另一只手的手指做出的完全相同的手势根据哪一个按钮524被选择了具有多种意义。如图17E所示,当拇指移动离开触摸屏520时,控制框522可能超时并消失。作为选择,可以使用常规的关闭图标或按钮关闭控制框。\n[0119] 图18是根据本发明的一个实施例的GUI操作方法550的框图。GUI操作方法550是为了启动缩放目标而配置的。GUI操作方法550通常开始于块552,在此显示一个控制框GUI元素。控制框包含一个或多个控制按钮,其稍微靠近,并且其可被用于执行动作。控制框可以例如包括诸如最大化、最小化、关闭等等的控制按钮。在块552之后,GUI操作方法\n550继续进行到块554,在此当检测到在控制框或者其中一个控制按钮之上出现一个对象时,控制框被扩大,或至少其中一个控制按钮被扩大一段时间。在控制框被扩大的情况下,每个控制按钮均被扩大由此更易于对它们作出选择。在仅仅控制按钮被扩大的情况下,用户将确定这是否是正确的按钮并且如果是的话则选择该扩大了的按钮,或者重新启动该过程使得适当的控制按钮被呈现。在多数情况下,控制按钮的大小与手指的大小一致使得它们可易于被该对象选择。在块554之后,GUI操作方法550继续进行到块556,在此当检测到在其中一个扩大了的控制按钮之上出现了对象时生成一个与所选择的控制按钮有关的控制信号。\n[0120] 图19A~19D举例说明了利用上述的GUI操作方法550的缩放目标时序。如图\n19A所示,用户510将他们的手指576放到控制框578之上。由于控制框578在其中包含的按钮580要比手指576要小并且位置靠近,对于用户510来说难于在可能不会压到一个不期望的按钮580,例如与所期望的按钮邻近的按钮,而直接作出选择。举例来说,手指576可能覆盖两个或多个按钮580。如图19B所示,当用户将他们的手指放到控制框之上时,至少部分控制框578被扩大,包括在其中包含的按钮580。如图19C所示,一旦控制框达到其扩大状态,用户就可以选择其中一个扩大了的按钮,其现在接近拇指的大小。举例来说,用户可以在所期望的控制按钮上敲击。如图19D所示,在按钮被选择或者在预定一段时间其中没有作出任何选择(例如,超时)之后或者当用户将他们的手指移动离开控制框时控制框还原到其初始大小。\n[0121] 图20是根据本发明的一个实施例的GUI操作方法600的框图。GUI操作方法600是为了启动页面转换而配置的。GUI操作方法600通常开始于块602,在此在GUI中显示来自许多页面的一个页面。举例来说,页面可以与电子图书有关。在块602之后,GUI操作方法600继续进行到块604,在此检测到在预定区域中出现一个目标(或多个目标)。该预定区域可以例如对应于在其处显示页码的区域。在块604之后,GUI操作方法600继续进行到块606,在此当对象(或多个对象)在该预定区域内平移时生成一个页面转换信号。该平移被配置用于模拟手指翻真实纸质精装书内的页面。平移的方向指示是翻到页面列表的下一页还是翻到上一页。例如,如果手指从右至左扫过,则生成一个后翻页信号,而如果手指是从左至右扫过,则生成一个前翻页信号。这个GUI操作方法600可以以几种方式增强。\n例如,如果多个手指扫过,则这将创建大于一页的翻页信号。例如,两个手指扫过相当于翻两页,三个手指扫过相当于翻三页等等。或者两个手指扫过相当于翻10页,三个手指扫过相对于翻50页等等。\n[0122] 图21A~21D举例说明了利用上述的GUI操作方法600的页面翻转时序。如图\n21A所示,其接近于用户510拿着图形输入板PC 512,用户在页码上面以到页面630左侧的方向扫过他们的手指。如图21B所示,图形输入板PC 512识别页码区内的该扫动以及扫动的方向并因此图形输入板PC 512显示页面组内的下一页。这个操作可被重复执行以便快速移动穿过页面组。如图21C所示,用户在页码上面以到页面630右侧的方向扫过他们的手指576。如图21D所示,图形输入板PC 512识别页码区内的该扫动以及扫动的方向并因此图形输入板PC 512显示页面组内的上一页。这个操作可被重复执行以便快速移动穿过页面组。\n[0123] 图22是根据本发明的一个实施例的GUI操作方法650的框图。GUI操作方法650是为典型地在滚动或扫视操作期间启动惯性而配置的。惯性通常定义为静止的物体保持静止或者运动的物体继续以直线运动直到受到外力的干扰的趋势。在本特定的实施例中,GUI或其的某些部分与惯性特性有关,这就是其对运动中的变化速率的阻力。对于具有较高惯性特性的GUI,对于给定输入,GUI的加速将更慢。另一方面,如果GUI具有较低的惯性特性,则对于给定输入的加速将较快。\n[0124] GUI操作方法650通常开始于块652,在此一个图形图像被显示在GUI上。在块652之后,GUI操作方法650继续进行到块654,在此检测到触敏表面上的滚动或扫视敲击。举例来说,敲击可以是线性的或旋转的敲击。在线性敲击期间,滚动或扫视的方向典型地跟随敲击的方向。在旋转敲击期间(参见图6),该旋转敲击典型地被转换为线性输入,其中顺时针运动可对应于垂直向上而逆时针运动可对应于垂直向下。在块654之后,该处理流程继续进行到块656,在此确定滚动或扫视敲击的速度和方向。在块656之后,GUI操作方法650继续进行到块658,在此根据滚动或扫视敲击的速度和方向以及相关的惯性特性移动图像。\n在块658之后,GUI操作方法650继续进行到块660,在此甚至在当没有再检测到扫视或滚动敲击时继续图像的运动。例如,当用户从触敏表面抬起他们的手指时,滚动或扫视功能继续如同仍然作出了滚动或扫视敲击一样。在某些情况下,无限地持续图像的运动直到执行了某一制动(停止或减速)控制。这个特定的方法模拟了失重。在其它的情况下,图像的运动根据有关的惯性GUI操作方法650减速。比喻来说,图像可相当于一张纸在桌面上移动。为了移动该页纸,用户在所期望的方向上在纸上施加一个力。当用户将他们的手指拿离纸张时,纸张将继续以期望的方向沿桌面滑动一段时间。在手指拿离之后其滑动的量通常依赖于其的质量、手指施加的力、纸和桌面之间发现的摩擦力等。如应当理解的那样,传统上当滚动和扫视被实现时,当手指抬起时则滚动和或扫视停止。相反,利用上述提及的方法,当手指抬起时滚动或扫视继续移动。\n[0125] GUI操作方法650可另外包括模块A和B。在模块A,在触敏表面检测到一个诸如手指的对象,当图像移动时不需要该对象的协助(块660)。在模块B,当检测到该对象时该图像的运动停止,即,新的触击用作制动手段。使用上述的比喻,当纸张穿越桌面滑动时,用户将他们的手指按在纸张上面从而停止其的运动。\n[0126] 图23A~23D举例说明了利用上述的方法的惯性时序。图23A举例说明了呈现GUI \n678的显示屏,该显示屏包括窗口679,窗口679具有一个媒体项681列表680。窗口679和列表680可对应于例如在由Cupertino,CA的公司苹果计算机公司制造的 中发现的控制窗口和音乐列表。如图23B所示,当用户将他们的一个手指或多个手指576在触摸屏520之上滑动时,实现了将媒体项上移或下移穿过窗口的垂直滚动。滚动的方向可跟随手指移动的同一个方向(如图所示),或者以相反的方向移动。在一个特定的实施例中,单个手指用于从列表选择媒体项,而两个手指被用于滚动穿过列表。\n[0127] 滚动通常适合用于穿越显示屏上的显示区移动被显示的数据或图像(例如,媒体项681)使得新的数据集(例如,媒体项681)被带入显示区内的视图。在多数情况下,一旦显示区满了,则出现在显示区边缘处的每个新的数据集和所有的其它数据集挪动一个位置。也就是说,新的数据集替代移出显示区的每个数据集。大体上,这些功能允许用户查看当前在显示区之外的连续的数据集。在多数情况下,用户能够通过以更快速度移动他或她的手指加速他们对数据集的遍历。在在此结合作为参考的美国专利申请Nos.:\n2003/0076303A1,2003/0076301A1,2003/0095096A1中能够找到滚动穿过列表的例子。\n[0128] 如图23C所示,甚至于当手指移离触摸屏时所显示的数据还继续移动。该持续移动至少部分基于之前的运动。例如,滚动可能以相同的方向和速度继续。在某些情况下,滚动随时间的过去慢下来,即,穿过媒体项的速度越来越慢直到滚动最终停下来从而留下静止的列表。举例来说,每个新带入显示区的媒体项都将逐渐降低速度。可选或附加地,如图\n23D所示,当手指576返回到触摸屏520上时,所显示的数据停止移动。也就是说,放回手指到触摸屏上可实现制动,其停止或减慢连续的动作运动。尽管这个时序是针对垂直滚动的,应注意的是这并不是一个限制而是可以使用上述的方法执行水平滚动以及扫视。\n[0129] 图24是根据本发明的一个实施例的GUI操作方法700的框图。方法700配置用于模拟一个键盘。该方法通常开始于块702,在此在屏幕上呈现一个键盘。在块702之后,处理流程继续进行到块704,在此在触摸屏上同时检测到第一键之上的第一对象和第二键之上的第二对象的出现。该触摸屏可位于显示屏之上或之前。举例来说,显示屏可以是LCD而触摸屏可以是多点触摸屏。在块704之后,该处理流程继续进行到块706,在此当在第一键之上检测到第一对象以及当同时在第二键之上检测到第二对象时生成一个或多个同时发生的控制信号。\n[0130] 在一个实施例中,当在第一键之上检测到第一对象以及当同时在第二键之上检测到第二对象时仅生成一个控制信号。举例来说,第一键可能是shift键而第二键可能是符号键(例如,字母、数字)。通过这种方式,该键盘充当一个常规的键盘,即,允许用户同时选择多个键以便改变符号,即大/小写。该键也可对应于control键,alt键,escape键,功能键等等。\n[0131] 在另一个实施例中,为每个同时发生的被激励的键(键触击)生成一个控制信号。\n例如,可同时键入字符组。在一些情况下,运行在键盘后面的应用程序可被配置用于基于某种预定的标准确定字符时序。例如,尽管字母可能是混乱的,应用程序能够基于拼写、用法、上下文等等确定正确的字符时序。\n[0132] 尽管仅描述了两个键的,应注意的是两个键并不是一个限制,而是可同时激励两个以上的键以产生一个或多个控制信号。例如,可以实现control-alt-delete功能或者可同时键入或更大的字符组。\n[0133] 图25A~25D举例说明了利用上述的方法的键盘时序。图25A举例说明了以键盘形式展示一个GUI对象730的显示屏。如图25B所示,用户将他们的手指576放到多点触摸屏520之上,放到键盘730之上以录入数据到字处理程序。举例来说,用户可放一个手指576A到Q键上以便在字处理程序中产生小写的“q”。如图25C所示,当用户决定一个字母应该大写时,用户将一个手指576B放在shift键上而另一只手指576A放到所想要的字母(如由箭头指示的)上。如图25D所示,为了继续以小写键入,用户简单地将他们的手指\n576B从shift键移开并将他们的手指576A放到所想要的字母上(如由箭头所指示的)。\n[0134] 图26是根据本发明的一个实施例的GUI操作方法750的框图。方法750被配置用于模拟诸如在其所有内容在此结合作为参考的美国专利公开Nos.:2003/0076303A1,\n2003/0076301A1,2003/0095096A1中描述的那些滚动轮。该方法通常开始于块752,在此在显示屏上呈现一个虚拟滚动轮。在一些情况下,该虚拟滚动轮可在其中心包括一个虚拟按钮。该虚拟滚动轮被配置用于实现例如滚动穿过一个列表而该按钮被配置用于实现选择例如存储在列表中的项目。在块752之后,该方法继续进行到块754,在此在触摸屏上检测到在虚拟滚动轮之上出现至少一个手指以及在某些情况下一个以上的手指,如第一和第二手指。该触摸屏可位于显示屏之上或之前。举例来说,显示屏可以是LCD而触摸屏可以是多点触摸屏。在块754之后,该方法继续进行到块756,在此设置手指在虚拟滚动轮上的初始位置。举例来说,可确定手指相对于参考点的角度(例如,12点钟、6点钟等)。在多数情况下,当手指被放置到虚拟滚动轮之上时,手指的放下与该虚拟滚动轮相关、链接或锁定各个手指(或一个手指)到该虚拟滚动轮。\n[0135] 在块756之后,方法750继续进行到块758,在此当手指的角度相对于参考点改变时生成一个旋转信号。该旋转信号可用于执行包括例如滚动穿过多个媒体项、以及可能随手指移动该虚拟滚动轮的几个动作。举例来说,该信号的结合和频率可被转换为用于移动选择器穿过媒体项所需的以及用于使虚拟滚动轮围绕其轴移动所需的距离、方向和速度。\n在多数情况下,滚动和轮子旋转的量根据手指旋转的量变化。举例来说,如果手指移动5度则轮子也移动5度。此外,轮子的滚动和旋转典型地基本上与手指的运动同时发生。例如,当手指旋转时,同时执行轮子的滚动和旋转。此外,尽管不是要求的,轮子的滚动和旋转的方向与手指运动的方向相同。例如,虚拟滚动轮以手指旋转的方向(例如,顺时针、逆时针等)旋转。\n[0136] 在某些情况下,上述的惯性原理可被应用到该虚拟滚动轮。在诸如这样的情况下,当各手指(或其中一个手指)抬离虚拟滚动轮时该虚拟滚动轮继续滚动并且借助于虚拟摩擦力慢慢地停下来。可选或附加地,可通过将手指(或被移离的手指)放回到虚拟滚动轮上可以停止该持续的旋转从而制动该虚拟滚动轮的旋转。\n[0137] 应当指出的是,旋转虚拟滚动轮并不是限制,并且在某些情况下,虚拟滚动轮可保持静止(例如,不随手指旋转)以便模拟一个触摸表面而不是一个机械转轮。\n[0138] 图27A~27D举例说明了利用上述方法的滚动轮时序。图27A举例说明了呈现了一个滚动轮的显示屏。该滚动轮可以作为程序的一部分自动显示或者可以在当执行了一个特定的手势时被显示。举例来说,在音乐程序(如由Cupertino,CA,的苹果计算机公司制造的 )的操作期间,当两个手指而不是典型地用于音乐程序中的跟踪的一个手指被放置到触摸屏上时该虚拟滚动轮将出现在该触摸屏上。在某些情况下,仅当两个手指被放置在GUI的预定区域上时才会出现虚拟滚动轮。作为选择,虚拟滚动轮的出现可基于其它或另外数量的手指。例如,当音乐程序正在运行时该虚拟滚动轮可响应于发生的任何触击而出现。\n[0139] 如图27B所示,用户将他们的手指放到多点触摸屏520之上,放到滚动轮之上。在某些点上,手指被锁定到该滚动轮。这可发生例如在手指放下时。如图27C所示,当手指以顺时针方向旋转时,滚动轮根据旋转的手指以顺时针方向旋转。如图27D所示,当手指以逆时针方向旋转时,滚动轮根据旋转的手指以逆时针方向旋转。可选地,虚拟滚动轮的旋转也可以随手指的线性运动以切线方式旋转。\n[0140] 图28是根据本发明的一个实施例的用户接口方法800。用户接口方法800可以例如在具有显示屏和诸如触摸屏的触敏输入设备的计算设备上执行。用户接口方法800开始于块802,在此检测到一个触击。这可在当诸如指示笔或者一个或多个手指的对象被放到触敏输入设备的触敏表面时使用触敏输入设备实现。\n[0141] 一旦检测到触击,用户接口方法800继续进行到块804,在此响应该触击确定用户接口(UI)模式。用户接口模式可广泛变化。用户接口模式可包括导航模式、滚动模式、数据录入模式、编辑模式、控制模式、信息模式、显示模式等等。每一种模式典型地具有一个或多个与之相关的GUI接口元素。举例来说,虚拟滚动轮(例如,图27)或滑动条可能与滚动模式相关、键盘(例如,图25)或小键盘(keypad)可能与数据录入模式相关、诸如格式化工具条或绘图工具条的工具条可能与编辑模式相关、包括按钮的控制面板可能与控制模式相关、窗口可能与信息模式相关等等。\n[0142] 基于包括例如一个或多个当前在计算设备上运行的应用、一个或多个应用的当前状态或模式、和/或与该触击有关的触击特性的一个或多个条件可以在块804确定用户接口模式。事实上,在块804确定用户接口模式涉及监视和分析一个或多个条件。\n[0143] 当前应用可例如包括操作系统(例如,Mac OS)、字处理程序、电子数据表程序、绘图编辑程序、图像编辑程序、游戏程序、照片管理程序(例如,iPhoto)、音乐管理程序(例如,iTunes)、视频编辑程序(例如,iMovie)、电影管理程序(例如,QuickTime)、音乐编辑程序(例如,GarageBand)、因特网接口程序等等。\n[0144] 应用的当前状态或模式可对应于应用(例如,当前窗口或窗口内的窗口)的活动部分。例如,音乐管理程序的活动部分可对应于音乐控制模式、播放列表选择模式、菜单模式等等。此外,照片管理程序的活动部分可对应于照片浏览模式或照片编辑模式。更进一步地,因特网接口程序的活动部分可对应于web模式或email模式。\n[0145] 另一方面,触击特性可例如对应于触击位置、触击ID、触击次数等,如同以上提及的许多实施例中描述的那样。\n[0146] 关于应用,不同的应用可指示不同的UI模式。例如,字处理或电子数据表应用可指示数据录入模式、而音乐管理程序可指示控制或滚动模式。关于应用的当前状态,不同的应用模式可指示不同的UI模式。例如,在音乐管理程序中,菜单窗口可指示一个UI模式,而播放列表窗口可指示另一个UI模式。\n[0147] 关于触击,手指的数量可指示不同的UI模式。例如,一个手指可指示一个第一模式而两个手指可指示一个第二模式。另外,触击的身份可指示不同的UI模式。例如,拇指可指示一个第一模式而食指可指示一个第二UI模式。此外,触击的位置可指示不同的UI模式。例如,第一触击位置可指示一个第一UI模式,而第二触击位置可指示一个第二UI模式(如果触击位于音乐程序的边界之上则可以实现第一UI模式,而如果触击是位于音乐程序中的播放列表或歌曲列表之上时则可以实现第二UI模式)。\n[0148] 在一个实施例中,用户接口模式仅基于一个条件。例如,用户接口条件仅基于应用、应用的当前状态以及上述的各种触击特性的其中之一。在另一个实施例中,用户接口模式基于多个条件。例如,用户接口模式可基于至少从应用选择的应用当前状态和各种触击特性的组合。举例来说,应用与第一触击特性结合可以指示第一UI模式,而同样的应用与第二触击特性结合可以指示第二UI模式。\n[0149] 为了引证几个例子,如果应用是字处理或电子数据表程序则可以确定该模式为数据录入模式使得数据能够被输入到该电子数据表(例如,键盘)。如果应用是一个音乐管理程序并且当前正显示一个播放列表(活动部分),则可以确定该模式为滚动模式使得可以滚动穿过列表中的项以便找到想得到的项(例如,滚动轮)。可选地,如果正在播放歌曲(活动部分),则可以确定该模式为控制模式使得可以控制播放歌曲的方式(例如,播放,停止,定位和音量控制选项)。另外,如果应用是照片管理程序并且显示了一张特定的照片(活动部分),则可以确定该模式为控制模式使得可以修改该照片(例如,转换为黑白的、消除红眼(red eye),以及滚动选项)。\n[0150] 在确定了用户接口模式804之后,用户接口方法800继续进行到块806,在此基于该用户接口模式显示一个或多个GUI元素并响应该触击。在某些情况下,仅显示一个GUI元素而在另外的情况下显示多个GUI元素。GUI元素典型地与特定的模式相关。例如,滑动条或滚动轮可能在滚动模式中显示,键盘或小键盘可能在数据录入模式中显示,工具条可能在编辑模式中显示,各种按钮或控制面板可能在控制模式中显示,而信息窗口可能在信息模式中显示。\n[0151] 可以以各种方式显示GUI元素。例如,其可被放到当前被显示的图形图像之上,或者其可取代当前显示的图形图像(例如,最小化、移位等)。在某些情况下,GUI元素被处理为半透明的使得布置在该GUI元素之下的当前图形图像能够被看见(从而消除了最小化和移位)。这在当使用滚动轮穿过布置在该滚动轮的下面的列表时是有帮助的。此外,GUI元素可被放置在该触击的附近或者可被放置在某个预定的位置。该预定的位置可以基于人机工程学,即,对于用户来说什么是最佳的位置。\n[0152] 除了上述之外,可以使用诸如逐渐递增、淡入、弹出、以及某些情况下可甚至于脉动、跳动等过渡效果来显示GUI元素。如果是弹出效果,则GUI元素被立即带入视图。如果是逐渐递增效果,如图29A~29D所示,则最初显示一个较小的GUI元素820A(滚动轮),此后GUI元素820A持续增大从各个尺寸820B和820C直到其达到其期望的尺寸820D。增长的速度可基于触击的压力。例如,如果触击压力较低,则GUI元素可能增长缓慢而如果触击压力较高则GUI元素可更快速地增长。此外,GUI元素的最终尺寸可基于触击的长度。例如,当不再检测到触击时GUI元素停止增长。或者,该速度和尺寸可以是用户可调的,例如通过一个控制面板。如果是淡入效果,如图30A~30D所示,GUI元素822从什么也没有开始被缓慢带入视图,经过各种级别的失真和透明度822A-822C,到最后完整的图形822D。淡入可与逐渐递增同样地被控制。例如,可以根据触击的压力和长度控制淡入的速度和级别。\n[0153] 该过渡效果甚至可继续至当前显示的图像,即在检测到触击之前当前显示的图像。在一个实施例中,相反的效果发生在当前显示的图像上。例如,如图31A~31D所示,当GUI元素820增长的越来越大时当前显示的图形图像826越来越小地最小化。可选地,如果GUI元素立即弹出,则当前显示的图形图像可立即消失或被立即最小化。\n[0154] 一旦显示了GUI元素(806),用户接口方法800继续进行到块808,在此启用GUI元素的功能。例如,监视与该GUI元素有关的触击事件并执行与触击相关的动作。GUI元素的启用可与GUI元素的显示同时发生使得一旦GUI元素被显示则用户能够立即开始使用该GUI元素。举例来说,在滚动模式中,可以显示一个虚拟滚动轮并且当被启用时就监视与该滚动轮有关的触击事件。在监视期间,当手指围绕该虚拟滚动轮旋转时生成与该滚动轮上的手指的位置相关的控制信号。这些信号可被用于执行滚动。例如,信号的数量、组合和频率可被转换为移动选择条穿过列表所需的距离、方向和速度。举例来说,对于虚拟滚动轮更为详细的描述以及它们是如何起作用的参见图6、26和27。\n[0155] 在启用和显示GUI元素的某些点处,作出有关是否使GUI元素无效的确定812。确定812可以以各种方式作出。例如:1)没有再检测到触击,2)一段预设时间内没有检测到触击,3)发生超时(自从GUI元素首次被显示/启用已经过去一段预设的时间量),或者4)用户选择(例如,用户选择了关闭该GUI元素的按钮)。\n[0156] 如果该确定指示使其无效,则该方法继续进行到块814,在此GUI元素被禁用并从显示屏移除。一旦被禁止,当触击发生时不再执行动作。GUI元素从显示屏的移除可类似于显示该GUI元素操作,其中可使用诸如缓慢淡出、逐渐收缩或立即消失(突然消失)将其移除。移除的过渡效果可与显示过渡效果相反操作。例如,GUI元素淡出类似于淡入、缩小类似于增大或者突然消失类似于突然出现。此外,当被替代或缩小的当前图形图像可以慢慢地增长到它们最初的尺寸和形状时GUI元素可慢慢地隐藏和消失。如果确定没有指示使其无效,则该方法维持GUI元素的显示及其的启用。\n[0157] 图32是根据本发明的一个实施例的确定方法850。该确定方法可例如对应于图28中的块804。确定方法开始于块852,在此确定当前的应用。确定方法继续进行到块854,在此确定应用的当前状态。在块854之后,确定方法继续进行到块856,在此确定与该触击效果有关的触击特性。确定方法继续进行到块860,在此基于来自块852-858的结果选择UI模式。举例来说,针对一组特定的条件一组规则可指示适当的UI模式。\n[0158] 图33是根据本发明的一个实施例的用户接口方法900。该方法可例如在具有显示屏和诸如触摸屏的触敏输入设备的计算设备上执行。接口方法900开始于块902,在此显示一个歌曲列表。图34A示出了包括歌曲列表932A的窗口930A的一个例子,而图35A示出了包括歌曲列表932B的窗口930B的另一个例子。图34A可例如是显示在由Cupertino,设备CA的苹果计算机公司制造的 上的图形用户接口,而图35A可以是例如与一个音乐管理程序,诸如由Cupertino,CA苹果计算机公司制造的 相关联的一个图形用户接口。\n[0159] 在块902之后,用户接口方法900继续进行到块904,在此在所显示的歌曲列表(或窗口或整个GUI)之上检测到触击。这可当诸如指示笔或一个或多个手指的对象被放到诸如触摸屏的触敏输入设备的触敏表面上时利用该触敏输入设备实现。图34B和35B示出了手指925放置到包括歌曲类别932的窗口930之上。\n[0160] 一旦检测到触击,用户接口模块900继续进行到块906,在此激活一个虚拟滚动轮。也就是说,除了歌曲类别之外还显示一个虚拟滚动轮并且启用其的功能。本质上,因为该歌曲列表被触击,提供允许用户穿过歌曲列表中的歌曲的滚动轮。在某些情况下,该虚拟滚动轮取代媒体项,即,媒体项被最小化或被移位以便为虚拟滚动轮腾出空间。在其它情况下,虚拟滚动轮被安置或放置在媒体项之上(媒体项保持它们当前的尺寸、形状和位置)。\n可以使虚拟滚动轮半透明使得可以透过该虚拟滚动轮看到媒体项。图34C和35C示出了放置在包括歌曲列表932的窗口930之上的透明的虚拟滚动936。可选地,可以显示一个虚拟滑动条。\n[0161] 一旦被显示,则作出有关是否执行了有关于该虚拟滚动轮的滚动触击事件(或手势)。例如,是否有手指放到该滚动轮之上以及该手指是否以旋转方式围绕该滚动轮移动。\n[0162] 如果用户执行了滚动触击事件,则用户接口方法900继续进行到块910,在此实现滚动穿过与该滚动轮触击事件相关的歌曲列表。举例来说,当手指围绕虚拟滚动轮旋转时一个选择器条可能从一首歌移动到另一首。图34D和35D示出了手指925围绕虚拟滚动轮\n936旋转,以及选择器条938根据旋转的手指925线性移动穿过歌曲列表932。在该举例说明的实施例中,当手指以顺时针方式旋转时选择器条线性向上移动而当手指以逆时针方式旋转时线性向下移动。然而应注意,这并不是一个限制。例如,当手指以顺时针方式旋转时选择器条可线性向下移动而当手指以逆时针方式旋转时线性向上移动。\n[0163] 如果没有执行滚动或选择触击事件,则用户接口方法900继续进行到块916,在此使该虚拟滚动轮无效。也就是说,虚拟滚动轮被禁止并从显示屏移除。图34E和35E示出了没有虚拟滚动轮936的显示屏928。尽管移除了虚拟滚动轮936,典型地保持对该歌曲列表所作的修改,即选择器条938的位置。\n[0164] 在某些情况下,虚拟滚动轮可以包括横越在其表面上的按钮区或者位于其中心或围绕其各边的虚拟按钮。该按钮和按钮区可以例如对应于菜单、播放、定位、暂停等等。在这个特定的实施例中,上述的方法可包括附加的发生在块416之前的步骤。例如,如果没有执行滚动触击事件,则用户接口方法900可包括附加的块,在该块处作出有关是否相对于该虚拟滚动轮执行了一个选择触击事件(或手势)的确定。该选择触击事件可通过敲击该按钮或通过在该按钮上施加增大的或减小的压力而不是围绕该虚拟滚动轮的表面旋转来实现的(参见图34F和35F)。如果该按钮是歌曲选择或回车键,则该方法包括另一个块,在该块处该歌曲与该选择器条布置在被选择的地方的上。也就是说,当虚拟按钮被敲击,或否则被选择,则播放当前被选择器条覆盖的歌曲并为了用户享受而输出。\n[0165] 应当注意的是,上述的方法并不是限制于滚动穿过歌曲列表。利用之前提及的技术可以滚动穿过任何的媒体项以及任何元素组。例如,在如图36A~36C所示的照片布局\n942中,当用户将他们的手指925放到照片布局942(或者分组)之上时可以出现一个虚拟滚动轮936,并在此后其可被用于移动一个高亮度器944穿过布局942中的各个照片943。\n举例来说,照片可以是可使穿过大量图像更为容易的缩略图。\n[0166] 图37是根据本发明的一个实施例的方法950。该方法开始于块952,在此确定是否检测到触击。如果检测到触击,该方法继续进行到块954,在此监视并分析当前的操作条件。该条件可以例如对应于当前的应用、应用的状态和/或与该触击相关的触击特性。\n[0167] 如果实现了第一组条件,则该方法继续进行到块956,在此激活第一GUI元素。例如,如图38A-B所示,在音乐管理程序的活动窗口960中,当用户触击了该活动窗口960的播放列表部分964时滚动轮962可被激活。\n[0168] 如果实现了第二组条件,则该方法继续进行到块958,在此激活第二GUI元素。例如,如图38B-C所示,在音乐管理程序的活动窗口960中,当用户还触击了该活动窗口960的边界968时音乐控制面板966可被激活。尽管它们是相互独立工作的,如果该第一和第二条件是同时发生的则该第一和第二GUI元素可同时被激活(图34C)。\n[0169] 在块956之后,该方法继续进行到块960,在此确定是否应当使第一GUI元素无效。\n如果是,则该方法继续进行到块962,在此使该GUI元素无效。例如,如图38D所示,当在播放列表962之上没有再检测到手指925时该第一GUI元素(滚动轮962)被禁止并从显示屏移除。如果不是,则该方法保持在块956。\n[0170] 同样但是独立地,在块958之后,该方法继续进行到块964,在此确定是否应当使第二GUI元素无效。如果是,则该方法继续进行到块966,在此使该GUI元素无效。例如,如图38E所示,当在边界968之上没有再检测到手指925时该第二GUI元素(控制面板966)被禁止并从显示屏移除。如果不是,则该方法保持在块958。\n[0171] 应当注意的是,该方法并不局限于仅仅两个GUI元素并且如果其它的条件被实现的话可以启动其它的GUI元素。例如,当第三组条件出现时一个第三GUI元素可被激活,等等。举例来说,如图38F所示,用户可将他们的手指925从活动窗口960的边界968滑动到菜单部分970由此启动从控制面板966到滚动轮972的改变(例如,当使第二GUI元素无效时,第三GUI元素被激活)。\n[0172] 此外,如图38G所示,用户将另外的手指925增加到当前的触击由此启动从第一控制面板966到第二控制面板982的一个变化。该第一控制面板966可包括诸如播放、停止、定位和音量选项的第一组控制选项,而第二控制面板982可包括诸如歌曲播放顺序、歌曲信息、灯光效果选项的第二组控制选项。\n[0173] 此外,如图38H所示,用户可放一个手指925A到边界968之上,另一个手指925B放到菜单部分970之上,而还有另一个手指925C放到播放列表部分964之上,由此特别启动三个不同的GUI元素:控制面板966,用于滚动穿过菜单970的第一滚动轮972,以及用于滚动轮穿过播放列表964的第二滚动轮962。\n[0174] 另外,可在同一个部分中激活多个GUI元素。例如,如图38I和38J所示,如果在播放列表964中选择了一个特定的方框990,则可以激活键盘992使得用户能够输入与该歌曲有关的数据(例如,标题、艺术家、风格等等)。如果滚动轮962在与键盘962相同的时刻被激活,则可最小化滚动轮962以如所示适应键盘992。一旦键盘992被使得无效,滚动轮\n962恢复回到其最初的大小。\n[0175] 本发明的各个方面、实施例、实现或特征可单独或以任何结合形式使用。\n[0176] 本发明优选通过硬件、软件或者硬件和软件的结合实现。软件也可以具体化为计算机可读介质上的计算机可读代码。计算机可读介质是任何能够存储数据并在其后被计算机系统读取的数据存储器。计算机可读介质的实例包括只读存储器、随机存取存储器、CD-ROM、DVD、磁带、光数据存储设备、以及载波。计算机可读介质也可在网络联结的计算机系统之上分布使得计算机可读代码以分布式方式被存储和执行。\n[0177] 虽然已经就几个优选实施例描述了本发明,存在改变、变更以及等同物,它们都落入本发明的范围内。例如,尽管本发明主要是针对触摸屏的,应当注意的是,在某些情况下触摸板也可用于替代触摸屏。也可使用其它类型的触摸感应设备。应当注意的是,存在许多实现本发明的方法和设备的可选方式。因此有意使下面的所附权利要求书被解释为包含所有的这种改变、变更以及等同物,被看作落入本发明的真正的精神和范围之内。
法律信息
- 2014-08-13
- 2009-09-09
- 2009-07-15
引用专利(该专利引用了哪些专利)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有引用任何外部专利数据! |
被引用专利(该专利被哪些专利引用)
序号 | 公开(公告)号 | 公开(公告)日 | 申请日 | 专利名称 | 申请人 | 该专利没有被任何外部专利所引用! |