用于无缝过渡用户界面行为的设备、方法和图形用户界面与流程

文档序号:20698329发布日期:2020-05-12 15:18阅读:263来源:国知局
用于无缝过渡用户界面行为的设备、方法和图形用户界面与流程

本申请是申请号为201880032214.3,申请日为2018年5月16日,发明名称为“用于无缝过渡用户界面行为的设备、方法和图形用户界面”的发明专利申请的分案申请。

本公开整体涉及具有触敏表面的电子设备,包括但不限于具有显示无缝过渡用户界面行为(诸如在用户界面中执行的操作之间的过渡)的触敏表面的电子设备。



背景技术:

触敏表面作为计算机和其他电子计算设备的输入设备的使用在近年来显著增长。示例性触敏表面包括触控板和触摸屏显示器。此类表面广泛地用于操纵显示器上的用户界面和其中的对象。示例性用户界面对象包括数字图像、视频、文本、图标和控制元件(诸如,按钮)以及其他图形。

示例性操纵包括响应于对设备的用户输入的改变来调节设备的输出(诸如一个或多个用户界面对象的位置和/或尺寸),以及基于输出的表示来确定要在用户界面中执行的操作。示例性用户界面对象包括数字图像、视频、文本、图标、控制元件(诸如,按钮和其他图形),以及应用程序用户界面。在某些情况下,用户将需要对以下各项中的用户界面对象执行此类操纵:文件管理程序(例如,来自appleinc.(cupertino,california)的finder);图像管理应用程序(例如,来自appleinc.(cupertino,california)的aperture、iphoto、photos);数字内容(例如,视频和音乐)管理应用程序(例如,来自appleinc.(cupertino,california)的itunes);绘图应用程序;展示应用程序(例如,来自appleinc.(cupertino,california)的keynote);文字处理应用程序(例如,来自appleinc.(cupertino,california)的pages);或电子表格应用程序(例如,来自appleinc.(cupertino,california)的numbers)。

但是,由于用户输入之间的过渡、用户输入的改变,以及正在执行的不同操作之间的用户界面行为的不连续性,用于执行这些操纵的方法可能会在用户界面中产生突然的变化。例如,响应于第一用户输入或对应于第一用户界面操作来推进用户界面动画,并且响应于用户输入的改变或对应于第二不同用户界面操作突然切换到推进不同的用户界面动画,使得用户界面发生剧烈变化,这可能会分散用户的注意力。注意力分散的用户可能要花更长时间来执行预期的操作,从而浪费能量。这后一考虑在电池驱动的设备中是特别重要的。



技术实现要素:

因此,需要具有更快、更有效的方法和界面的电子设备,以用于无缝过渡用户界面行为,诸如在用户界面中执行的操作之间的过渡。此类方法和界面任选地补充或替换用于改变用户界面的常规方法。此类方法和界面减少了来自用户的输入的数量、程度和/或性质,并且产生更有效的人机界面。对于电池驱动设备,此类方法和界面可节省用电并且增加两次电池充电之间的时间。

借助所公开的设备可减少或消除与具有触敏表面的电子设备的用户界面相关联的上述缺陷和其他问题。在一些实施方案中,该设备是台式计算机。在一些实施方案中,该设备是便携式的(例如,笔记本电脑、平板电脑或手持设备)。在一些实施方案中,该设备是个人电子设备(例如,可穿戴电子设备,诸如手表)。在一些实施方案中,该设备具有触控板。在一些实施方案中,该设备具有触敏显示器(也称为“触摸屏”或“触摸屏显示器”)。在一些实施方案中,该设备具有图形用户界面(gui)、一个或多个处理器、存储器和一个或多个模块、被存储在存储器中以用于执行多个功能的程序或指令集。在一些实施方案中,用户主要通过触笔和/或手指接触以及触敏表面上的手势来与gui进行交互。在一些实施方案中,这些功能任选地包括图像编辑、绘图、演示、文字处理、电子表格制作、玩游戏、接打电话、视频会议、收发电子邮件、即时消息通信、健身支持、数字摄影、数字视频录制、网页浏览、数字音乐播放、记笔记和/或数字视频播放。用于执行这些功能的可执行指令任选地被包括在被配置用于由一个或多个处理器执行的非暂态计算机可读存储介质或其他计算机程序产品中。

根据一些实施方案,在具有一个或多个输出设备和一个或多个输入设备的电子设备处执行一种方法。该方法包括经由输出关于用户界面的信息的一个或多个输出设备呈现用户界面。用户界面包括输出属性,该输出属性表示对应于用户界面的第一类型的输出。该方法还包括经由一个或多个输入设备来检测用户输入,用户输入包括与经由第一行为模型修改第一类型的输出相关联的第一输入;以及响应于检测到第一输入:基于第一行为模型随时间推移改变输出属性;以及基于输出属性的改变(输出属性的改变基于第一行为模型而产生),经由一个或多个输出设备,更新用户界面的呈现。该方法还包括,在基于输出属性的改变(输出属性的改变基于第一行为模型而产生)经由一个或多个输出设备来更新用户界面的呈现时,检测用户输入的改变;以及响应于检测到用户输入的改变:基于不同于第一行为模型的第二行为模型随时间推移改变输出属性,包括基于以下内容随时间推移开始改变输出属性:基于第一行为模型确定的输出属性的值;以及输出属性的值相对于时间的一阶导数。该方法包括,基于输出属性的改变(输出属性的改变基于第二行为模型而发生),经由一个或多个输出设备,更新用户界面的呈现。

根据一些实施方案,在具有显示器和触敏表面的电子设备处执行一种方法。该方法包括显示包括多个用户界面元素的用户界面。多个用户界面元素中的第一用户界面元素与多个输出属性相关联。该方法还包括检测对应于第一用户界面元素的用户输入,包括检测描述用户输入的多个输入参数中的第一输入参数的改变和该多个输入参数中的第二输入参数的改变;根据多个输入参数的改变修改第一用户界面元素的一个或多个输出属性,包括至少部分地基于第一输入参数的改变和第二输入参数的改变来修改第一用户界面元素的第一输出属性;以及根据第一用户界面元素的经修改的第一输出属性来更新用户界面。

根据一些实施方案,在具有显示器和触敏表面的电子设备处执行一种确定要在用户界面中执行的操作的方法。该方法包括在显示器上显示用户界面,该用户界面包括根据相关联的多个输出属性的值显示的多个用户界面元素,该多个输出属性定义多个用户界面元素中相应用户界面元素的输出属性;以及检测触敏表面上的用户输入,包括检测描述用户输入的多个输入参数中的一个或多个输入参数的改变。用户输入被引导至多个用户界面元素中的第一用户界面元素。该方法还包括,基于由用户输入的一个或多个输入参数驱动的一个或多个行为模型来修改第一用户界面元素的第一输出属性值;根据确定用户界面满足第一操作标准,在用户界面中执行第一操作;以及根据确定用户界面满足第二操作标准,在用户界面中执行不同于第一操作的第二操作。第一操作标准包括当第一用户界面元素的第一输出属性值高于第一阈值时满足的标准。第二操作标准包括当第一用户界面元素的第一输出属性值低于第一阈值时满足的标准。

根据一些实施方案,一种电子设备包括:显示器;触敏表面;任选地一个或多个存储器,用于检测与触敏表面的接触强度;任选地一个或多个触觉输出发生器;一个或多个处理器;以及存储器,该存储器存储一个或多个程序;一个或多个程序被配置为由一个或多个处理器执行,并且一个或多个程序包括用于执行或引起执行本文所述方法中的任一种方法的操作的指令。根据一些实施方案,一种计算机可读存储介质在其中存储有指令,这些指令在被具有显示器、触敏表面、用于检测与触敏表面的接触强度的任选地一个或多个传感器以及任选地一个或多个触觉输出发生器的电子设备执行时,使得该设备执行本文所述的任何方法的操作或使得本文所述任何方法的操作被执行。根据一些实施方案,具有显示器、触敏表面、用于检测与触敏表面的接触强度的任选地一个或多个传感器、任选地一个或多个触觉输出发生器、存储器和用于执行存储在存储器中的一个或多个程序的一个或多个处理器的电子设备上的图形用户界面包括在本文所述任何方法中所显示的一个或多个元件,该一个或多个元件响应于输入进行更新,如本文所述的任何方法中所描述的。根据一些实施方案,一种电子设备包括:显示器、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器以及任选的一个或多个触觉输出发生器;以及用于执行或导致执行本文所述方法中的任一种方法的操作的装置。根据一些实施方案,用于具有显示器、触敏表面、用于检测与触敏表面的接触强度的任选地一个或多个传感器以及任选地一个或多个触觉输出发生器的电子设备中的信息处理设备包括用于执行本文所述的任何方法的操作或使得本文所述的任何方法的操作被执行的装置。

因此,向具有显示器、触敏表面、用于检测与触敏表面的接触强度的任选的一个或多个传感器、任选的一个或多个触觉输出发生器、任选的一个或多个设备取向传感器以及任选的音频系统的电子设备提供用于无缝过渡用户界面行为的改进的方法和界面,从而利用此类设备提高有效性、效率和用户满意度。此类方法和界面可以补充或替代用于改变用户界面的常规方法。

附图说明

为了更好地理解各种所述实施方案,应结合以下附图参考下面的具体实施方式,其中类似的附图标号在所有附图中指示对应的部分。

图1a是示出根据一些实施方案的具有触敏显示器的便携式多功能设备的框图。

图1b是示出根据一些实施方案的用于事件处理的示例性部件的框图。

图1c是示出根据一些实施方案,使用行为模型来修改用户界面的示例性部件的框图。

图1d是示出根据一些实施方案,用于使用行为模型来修改用户界面的示例性应用程序独立软件模块的框图。

图2示出了根据一些实施方案的具有触摸屏的便携式多功能设备。

图3是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备的框图。

图4a示出了根据一些实施方案的便携式多功能设备上的应用程序菜单的示例性用户界面。

图4b示出了根据一些实施方案的用于具有与显示器分开的触敏表面的多功能设备的示例用户界面。

图4c-图4e示出了根据一些实施方案的动态强度阈值的示例。

图5a-图5ba示出了根据一些实施方案,响应于所检测到的用户输入来提供无缝用户界面过渡的示例性用户界面。

图6a-图6f是根据一些实施方案的用于无缝过渡用户界面行为的过程的流程图。

图7a-图7c是根据一些实施方案,响应于输入来更新用户界面的输出属性的过程的流程图。

图8a-图8d是根据一些实施方案,用于响应于用户输入来确定要在用户界面中执行的操作的过程的流程图。

具体实施方式

很多电子设备显示响应于改变的用户输入和/或响应于在用户界面中执行不同操作而随时间改变的用户界面。当用户输入改变时,或者当用户界面从执行第一操作切换到执行第二操作时,用于改变用户界面的一些方法会在用户界面中产生突然的变化。用户界面的突然改变可能会分散用户注意力。此外,一些设备需要多个不同的用户输入来在用户界面中执行不同操作。在下文所述的实施方案中,描述了改进的方法,用于基于用户输入的改变而无缝过渡用户界面行为,以及用于基于单个输入的属性为在用户界面中执行的操作提供附加选项的改进的启发式方法。这些方法通过减少用户注意力分散并减少执行用户界面操作所需的用户输入数量来改善用户体验。

下面,图1a-图1d、图2和图3提供了对示例性设备的描述。图4a-图4b以及图5a-图5ba示出了用于提供无缝用户界面过渡的示例性用户界面,包括在用户界面中执行的操作之间的过渡。图6a-图6f示出了无缝过渡用户界面行为的方法的流程图。图7a-图7c示出了响应于输入来更新用户界面的输出属性的方法的流程图。图8a-图8d示出了响应于用户输入来确定要在用户界面中执行的操作的方法的流程图。图5a-图5ba中的用户界面用于示出图6a-图6f、图7a-图7c和图8a-图8d中的过程。

示例性设备

现在将详细地参考实施方案,这些实施方案的示例在附图中示出。下面的详细描述中示出许多具体细节,以便提供对各种所描述的实施方案的充分理解。但是,对本领域的普通技术人员将显而易见的是,各种所描述的实施方案可以在没有这些具体细节的情况下被实践。在其他情况下,没有详细地描述众所周知的方法、过程、部件、电路和网络,从而不会不必要地使实施方案的各个方面晦涩难懂。

还将理解的是,虽然在一些情况下,术语“第一”、“第二”等在本文中用于描述各种元件,但是这些元件不应受到这些术语限制。这些术语只是用于将一个元件与另一元件区分开。例如,第一接触可被命名为第二接触,并且类似地,第二接触可被命名为第一接触,而不脱离各种所描述的实施方案的范围。第一接触和第二接触均为接触,但它们不是同一个接触,除非上下文另外明确指示。

在本文中对各种所述实施方案的描述中所使用的术语只是为了描述特定实施方案的目的,而并非旨在进行限制。如在对各种所述实施方案中的描述和所附权利要求书中所使用的那样,单数形式“一个”和“该”旨在也包括复数形式,除非上下文另外明确地指示。还将理解的是,本文中所使用的术语“和/或”是指并且涵盖相关联的所列出的项目中的一个或多个项目的任何和全部可能的组合。还将理解的是,术语“包括”(“includes”、“including”、“comprises”和/或“comprising”)在本说明书中使用时是指定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、部件和/或其分组。

如本文中所使用,根据上下文,术语“如果”任选地被解释为意思是“当……时”后“在……时”或“响应于确定”或“响应于检测到”。类似地,根据上下文,短语“如果确定……”或“如果检测到[所陈述的条件或事件]”任选地被解释为是指“在确定……时”或“响应于确定……”或“在检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。

本文描述了电子设备、此类设备的用户界面和使用此类设备的相关过程的实施方案。在一些实施方案中,该设备为还包含其他功能诸如pda和/或音乐播放器功能的便携式通信设备,诸如移动电话。便携式多功能设备的示例性实施方案包括但不限于来自appleinc.(cupertino,california)的ipod设备。任选地使用其他便携式电子设备,诸如具有触敏表面(例如,触摸屏显示器和/或触控板触控板)的膝上型电脑或平板电脑。还应当理解的是,在一些实施方案中,该设备并非便携式通信设备,而是具有触敏表面(例如,触摸屏显示器和/或触控板)的台式计算机。

在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而,应当理解,该电子设备任选地包括一个或多个其他物理用户接口设备,诸如物理键盘、鼠标和/或操纵杆。

该设备通常支持各种应用程序,诸如以下应用程序中的一个或多个应用程序:记笔记应用程序、绘图应用程序、演示应用程序、文字处理应用程序、网站创建应用程序、盘编辑应用程序、电子表格应用程序、游戏应用程序、电话应用程序、视频会议应用程序、电子邮件应用程序、即时消息应用程序、健身支持应用程序、照片管理应用程序、数字相机应用程序、数字摄像机应用程序、web浏览应用程序、数字音乐播放器应用序程序、和/或数字视频播放器应用程序。

在设备上执行的各种应用程序任选地使用至少一个通用的物理用户界面设备,诸如触敏表面。触敏表面的一种或多种功能以及被显示在设备上的对应信息任选地对于不同应用程序被调整和/或变化,和/或在相应应用程序内被调整和/或变化。这样,设备的共用物理架构(诸如触敏表面)任选地利用对于用户而言直观且清楚的用户界面来支持各种应用程序。

现在将注意力转到具有触敏显示器的便携式设备的实施方案。图1a是示出根据一些实施方案的具有触敏显示器系统112的便携式多功能设备100的框图。触敏显示器系统112有时为了方便而被叫做“触摸屏”,并且有时被简称为触敏显示器。设备100包括存储器102(其任选地包括一个或多个计算机可读存储介质)、存储器控制器122、一个或多个处理单元(cpu)120、外围设备接口118、rf电路108、音频电路110、扬声器111、麦克风113、输入/输出(i/o)子系统106、其他输入、或控制设备116和外部端口124。设备100任选地包括一个或多个光学传感器164。设备100任选地包括用于检测设备100(例如,触敏表面,诸如设备100的触敏显示器系统112)上的接触强度的一个或多个强度传感器165。设备100任选地包括用于在设备100上生成触觉输出的一个或多个触觉输出发生器167(例如,在触敏表面诸如设备100的触敏显示器系统112或设备300的触控板355上生成触觉输出)。这些部件任选地通过一个或多个通信总线或信号线103进行通信。

如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户对触摸敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下,通过物理位移生成的触觉输出将由用户解释为触感,该触感对应于设备或设备的部件的物理特征的所感知的变化。例如,触敏表面(例如,触敏显示器或触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开点击”,即使在通过用户的移动而物理地被按压(例如,被移位)的与触敏表面相关联的物理致动按钮没有移动时。又如,即使在触敏表面的光滑度无变化时,触敏表面的移动也会任选地由用户解释或感测为触敏表面的“粗糙度”。虽然用户对触摸的此类解释将受到用户的个体化感官知觉的限制,但是对触摸的许多感官知觉是大多数用户共有的。因此,当触觉输出被描述为对应于用户的特定感官知觉(例如,“按下点击”、“松开点击”、“粗糙度”)时,除非另外陈述,否则所生成的触觉输出对应于设备或其部件的物理位移,该物理位移将会生成典型(或普通)用户的所述感官知觉。使用触觉输出向用户提供触觉反馈增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户提供适当的输入并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,触觉输出模式指定触觉输出的特性,诸如触觉输出的幅值、触觉输出的运动波形的形状、触觉输出的频率和/或触觉输出的持续时间。

当设备(例如经由移动可移动质量块生成触觉输出的一个或多个触觉输出发生器)生成具有不同触觉输出模式的触觉输出时,触觉输出可在握持或触摸设备的用户中产生不同触感。虽然用户的感官基于用户对触觉输出的感知,但大多数用户将能够识别设备生成的触觉输出的波形、频率和幅值的变化。因此,波形、频率和幅值可被调节以向用户指示已执行了不同操作。这样,具有被设计、选择和/或安排用于模拟给定环境(例如,包括图形特征和对象的用户界面、具有虚拟边界和虚拟对象的模拟物理环境、具有物理边界和物理对象的真实物理环境和/或以上任意者的组合)中对象的特性(例如大小、材料、重量、刚度、光滑度等);行为(例如振荡、位移、加速、旋转、伸展等);和/或交互(例如碰撞、粘附、排斥、吸引、摩擦等)的触觉输出模式的触觉输出在一些情况下将为用户提供有帮助的反馈,其减少输入错误并提高用户对设备的操作的效率。另外,触觉输出任选地被生成为对应于与所模拟物理特性(诸如输入阈值或对象选择)无关的反馈。此类触觉输出在一些情况下将为用户提供有帮助的反馈,其减少输入错误并提高用户对设备的操作的效率。

在一些实施方案中,具有合适触觉输出模式的触觉输出充当在用户界面中或在设备中屏幕后面发生感兴趣事件的提示。感兴趣事件的示例包括设备上或用户界面中提供的示能表示(例如真实或虚拟按钮、或拨动式开关)的激活、所请求操作的成功或失败、到达或穿过用户界面中的边界、进入新状态、在对象之间切换输入焦点、激活新模式、达到或穿过输入阈值、检测或识别一种类型的输入或手势等等。在一些实施方案中,提供触觉输出以充当关于除非改变方向或中断输入被及时检测到、否则会发生的即将发生事件或结果的警告或提示。触觉输出在其他情境下也用于丰富用户体验、改善具有视觉或运动困难或者其他可达性需要的用户对设备的可达性、和/或改善用户界面和/或设备的效率和功能性。任选地将触觉输出与音频输入和/或视觉用户界面改变进行比较,这进一步增强用户与用户界面和/或设备交互时用户的体验,并有利于关于用户界面和/或设备的状态的信息的更好传输,并且这减少输入错误并提高用户对设备的操作的效率。

应当理解,设备100仅仅是便携式多功能设备的一个示例,并且设备100任选地具有比所示出的部件更多或更少的部件,任选地组合两个或更多个部件,或者任选地具有这些部件的不同配置或布置。图1a中所示的各种部件在硬件、软件、固件、或它们的任何组合(包括一个或多个信号处理电路和/或专用集成电路)中实施。

存储器102任选地包括高速随机存取存储器,并且还任选地包括非易失性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备、或其他非易失性固态存储器设备。设备100的其他部件(诸如一个或多个cpu120和外围设备接口118)对存储器102的访问任选地由存储器控制器122来控制。

外围设备接口118可被用于将设备的输入外围设备和输出外围设备耦接到存储器102和一个或多个cpu120。一个或多个处理器120运行或执行存储器102中所存储的各种软件程序和/或指令集以执行设备100的各种功能并处理数据。

在一些实施方案中,外围设备接口118、一个或多个cpu120和存储器控制器122任选地在单个芯片诸如芯片104上实现。在一些其他实施方案中,它们任选地在独立的芯片上实现。

rf(射频)电路108接收和发送也被称作电磁信号的rf信号。rf电路108将电信号转换为电磁信号/将电磁信号转换为电信号,并且经由电磁信号与通信网络和其他通信设备进行通信。rf电路108任选地包括用于执行这些功能的熟知的电路,包括但不限于天线系统、rf收发器、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、编解码芯片组、用户身份模块(sim)卡、存储器等等。rf电路108任选地通过无线通信来与网络和其他设备进行通信,这些网络为诸如互联网(也被称为万维网(www))、内联网和/或无线网络(诸如,蜂窝电话网络、无线局域网(lan)和/或城域网(man))。该无线通信任选地使用多种通信标准、协议和技术中的任一者,包括但不限于全球移动通信系统(gsm)、增强型数据gsm环境(edge)、高速下行链路分组接入(hsdpa)、高速上行链路分组接入(hsupa)、演进纯数据(ev-do)、hspa、hspa+、双单元hspa(dc-hspa)、长期演进(lte)、近场通信(nfc)、宽带码分多址(w-cdma)、码分多址(cdma)、时分多址(tdma)、蓝牙、无线保真(wi-fi)(例如,ieee802.11a、ieee802.11ac、ieee802.11ax、ieee802.11b、ieee802.11g和/或ieee802.11n)、互联网协议语音技术(voip)、wi-max、电子邮件协议(例如,互联网消息访问协议(imap)和/或邮局协议(pop))、即时消息(例如,可扩展消息处理和存在协议(xmpp)、用于即时消息和存在利用扩展的会话发起协议(simple)、即时消息和存在服务(imps))、和/或短消息服务(sms)、或者包括在本文档提交日期还未开发出的通信协议的其他任何适当的通信协议。

音频电路110、扬声器111和麦克风113提供用户与设备100之间的音频接口。音频电路110从外围设备接口118接收音频数据,将音频数据转换为电信号,并将电信号传输到扬声器111。扬声器111将电信号转换为人类可听到的声波。音频电路110还接收由麦克风113从声波转换的电信号。音频电路110将电信号转换为音频数据,并且将音频数据传输到外围设备接口118以用于处理。音频数据任选地由外围设备接口118检索自和/或传输至存储器102和/或rf电路108。在一些实施方案中,音频电路110还包括耳麦插孔(例如,图2中的212)。耳麦插孔提供音频电路110与可移除音频输入/输出外围设备之间的接口,该外围设备为诸如仅输出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入(例如,麦克风)两者的耳麦。

i/o子系统106将设备100上的输入/输出外围设备诸如触敏显示器系统112和其他输入或控制设备116与外围设备接口118耦接。i/o子系统106任选地包括显示控制器156、光学传感器控制器158、强度传感器控制器159、触觉反馈控制器161、和用于其他输入或控制设备的一个或多个输入控制器160。一个或多个输入控制器160从其他输入控制设备116接收电信号/发送电信号到其他输入控制设备116。其他输入控制设备116任选地包括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击轮等。在一些另选的实施方案中,一个或多个输入控制器160任选地耦接至以下各项中的任一者(或不耦接至以下各项中的任一者):键盘、红外线端口、usb端口、触笔、和/或指针设备诸如鼠标。一个或多个按钮(例如,图2中的208)任选地包括用于扬声器111和/或麦克风113的音量控制的向上/向下按钮。一个或多个按钮任选地包括下压按钮(例如,图2中的206)。

触敏显示器系统112提供设备与用户之间的输入接口和输出接口。显示控制器156从触敏显示器系统112接收电信号和/或将电信号发送至触敏显示器系统112。触敏显示器系统112向用户显示视觉输出。视觉输出任选地包括图形、文本、图标、视频以及它们的任何组合(统称为“图形”)。在一些实施方案中,一些视觉输出或全部的视觉输出对应于用户界面对象。如本文所用,术语“示能表示”是指用户交互式图形用户界面对象(例如,被配置为对被引向图形用户界面对象的输入进行响应的图形用户界面对象)。用户交互式图形用户界面对象的示例包括但不限于按钮、滑块、图标、可选择菜单项、开关、超链接或其他用户界面控件。

触敏显示器系统112具有基于触觉和/或触感接触来接受来自用户的输入的触敏表面、传感器、或传感器组。触敏显示器系统112和显示控制器156(与存储器102中的任何相关联的模块和/或指令集一起)检测触敏显示器系统112上的接触(和该接触的任何移动或中断),并且将检测到的接触转换为与被显示在触敏显示器系统112上的用户界面对象(例如,一个或多个软按键、图标、网页或图像)的交互。在一些实施方案中,在触敏显示器系统112和用户之间的接触点对应于用户的手指或触笔。

触敏显示器系统112任选地使用lcd(液晶显示器)技术、lpd(发光聚合物显示器)技术、或led(发光二极管)技术,但是在其他实施方案中使用其他显示技术。触敏显示系统112和显示控制器156任选地使用现在已知的或以后将开发出的多种触摸感测技术中的任何技术以及其他接近传感器阵列或用于确定与触敏显示系统112接触的一个或多个点的其他元件来检测接触及其任何移动或中断,该多种触摸感测技术包括但不限于电容性的、电阻性的、红外线的、和表面声波技术。在一些实施方案中,使用投射式互电容感测技术,诸如从appleinc.(cupertino,california)的ipod中发现的技术。

触敏显示器系统112任选地具有超过100dpi的视频分辨率。在一些实施方案中,触摸屏视频分辨率超过400dpi(例如,为500dpi、800dpi或更大)。用户任选地使用任何合适的物体或附加物诸如触笔、手指等来与触敏显示系统112接触。在一些实施方案中,将用户界面设计成与基于手指的接触和手势一起工作,由于手指在触摸屏上的接触区域较大,因此这可能不如基于触笔的输入精确。在一些实施方案中,设备将基于手指的粗略输入转化为精确的指针/光标位置或命令以用于执行用户所期望的动作。

在一些实施方案中,除了触摸屏之外,设备100任选地包括用于激活或去激活特定功能的触控板(未示出)。在一些实施方案中,触控板是设备的触敏区域,与触摸屏不同,该触敏区域不显示视觉输出。触控板任选地是与触敏显示器系统112分开的触敏表面,或者是由触摸屏形成的触敏表面的延伸部分。

设备100还包括用于为各种部件供电的电力系统162。电力系统162任选地包括电力管理系统、一个或多个电源(例如,电池、交流电(ac))、再充电系统、电力故障检测电路、功率转换器或逆变器、电源状态指示符(例如,发光二极管(led))以及与便携式设备中的电力的生成、管理和分配相关联的任何其他部件。

设备100任选地还包括一个或多个光学传感器164。图1a示出与i/o子系统106中的光学传感器控制器158耦接的光学传感器。一个或多个光学传感器164任选地包括电荷耦合器件(ccd)或互补金属氧化物半导体(cmos)光电晶体管。一个或多个光学传感器164从环境接收通过一个或多个透镜而投射的光,并且将光转换为表示图像的数据。结合成像模块143(也被叫做相机模块),一个或多个光学传感器164任选地捕获静态图像和/或视频。在一些实施方案中,光学传感器位于设备100的与设备前部上的触敏显示系统112相背对的后部上,使得触摸屏能够用作用于静态图像和/或视频图像采集的取景器。在一些实施方案中,另一光学传感器位于设备的前部上,从而获取该用户的图像(例如,用于自拍、用于在用户在触摸屏上观看其他视频会议参与者时进行视频会议等等)。

设备100任选地还包括一个或多个接触强度传感器165。图1a示出了与i/o子系统106中的强度传感器控制器159耦接的接触强度传感器。一个或多个接触强度传感器165任选地包括一个或多个压阻应变仪、电容式力传感器、电气式力传感器、压电力传感器、光学力传感器、电容式触敏表面、或其他强度传感器(例如,用于测量触敏表面上的接触的力(或压力)的传感器)。一个或多个接触强度传感器165从环境接收接触强度信息(例如,压力信息或压力信息的代用物)。在一些实施方案中,至少一个接触强度传感器与触敏表面(例如,触敏显示器系统112)并置排列或邻近。在一些实施方案中,至少一个接触强度传感器位于设备100的与位于设备100的前部上的触敏显示系统112相背对的后部上。

设备100任选地还包括一个或多个接近传感器166。图1a示出了与外围设备接口118耦接的接近传感器166。另选地,接近传感器166与i/o子系统106中的输入控制器160耦接。在一些实施方案中,当多功能设备被置于用户耳朵附近时(例如,用户正在打电话时),接近传感器关闭并禁用触敏显示器系统112。

设备100任选地还包括一个或多个触觉输出发生器167。图1a示出了与i/o子系统106中的触觉反馈控制器161耦接的触觉输出发生器。在一些实施方案中,一个或多个触觉输出发生器167包括一个或多个电声设备诸如扬声器或其他音频部件;和/或用于将能量转换成线性运动的机电设备诸如电机、螺线管、电活性聚合器、压电致动器、静电致动器、或其他触觉输出生成部件(例如,用于将电信号转换成设备上的触觉输出的部件)。触觉输出发生器167从触觉反馈模块133接收触觉反馈生成指令,并且在设备100上生成能够由设备100的用户感觉到的触觉输出。在一些实施方案中,至少一个触觉输出发生器与触敏表面(例如,触敏显示器系统112)并置排列或邻近,并且任选地通过竖直地(例如,向设备100的表面内/外)或侧向地(例如,在与设备100的表面相同的平面中向后和向前)移动触敏表面来生成触觉输出。在一些实施方案中,至少一个触觉输出发生器传感器位于设备100的与位于设备100的前部上的触敏显示系统112相背对的后部上。

设备100任选地还包括一个或多个加速度计168。图1a示出与外围设备接口118耦接的加速度计168。另选地,加速度计168任选地与i/o子系统106中的输入控制器160耦接。在一些实施方案中,基于对从该一个或多个加速度计所接收的数据的分析来在触摸屏显示器上以纵向视图或横向视图来显示信息。设备100任选地除了一个或多个加速度计168之外还包括磁力仪(未示出)和gps(或glonass或其他全球导航系统)接收器(未示出),以用于获取关于设备100的位置和取向(例如,纵向或横向)的信息。

在一些实施方案中,存储于存储器102中的软件部件包括操作系统126、通信模块(或指令集)128、接触/运动模块(或指令集)130、图形模块(或指令集)132、触觉反馈模块(或指令集)133、文本输入模块(或指令集)134、全球定位系统(gps)模块(或指令集)135、以及应用程序(或指令集)136。此外,在一些实施方案中,存储器102存储设备/全局内部状态157,如图在1a和图3中所示的。设备/全局内部状态157包括以下中的一者或多者:活动应用状态,其指示哪些应用(如果有的话)当前是活动的;显示状态,其指示什么应用程序、视图或其它信息占据触敏显示器系统112的各个区域;传感器状态,包括从设备的各个传感器和其他输入或控制设备116获得的信息;以及关于设备的位置和/或姿态的位置和/或方位信息。

操作系统126(例如,ios、darwin、rtxc、linux、unix、osx、windows、或嵌入式操作系统诸如vxworks)包括用于控制和管理一般系统任务(例如,存储器管理、存储设备控制、电源管理等)的各种软件组件和/或驱动器,并且有利于各种硬件和软件组件之间的通信。

通信模块128有利于通过一个或多个外部端口124来与其他设备进行通信,并且还包括用于处理由rf电路108和/或外部端口124所接收的数据的各种软件组件。外部端口124(例如,通用串行总线(usb)、火线等)适于直接耦接到其他设备,或间接地通过网络(例如,互联网、无线lan等)进行耦接。在一些实施方案中,外部端口是与appleinc.(cupertino,california)的一些ipod和ipod设备中所使用的30针连接器相同或类似和/或兼容的多针(例如,30针)连接器。在一些实施方案中,外部端口是与appleinc.(cupertino,california)的一些ipod和ipod设备中所使用的lightning连接器相同或类似和/或兼容的lightning连接器。

接触/运动模块130任选地检测与触敏显示器系统112(结合显示控制器156)和其他触敏设备(例如,触控板或物理点击轮)的接触。接触/运动模块130包括各种软件部件以用于执行与(例如通过手指或触笔)接触检测相关的各种操作,诸如确定是否已发生接触(例如,检测手指按下事件)、确定接触的强度(例如,接触的力或压力,或者接触的力或压力的替代物)、确定是否存在接触的移动并跟踪跨触敏表面的移动(例如,检测一个或多个手指拖动事件),以及确定接触是否已停止(例如,检测手指抬离事件或者接触断开)。接触/运动模块130从触敏表面接收接触数据。确定接触点的移动任选地包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量值和/或方向的改变),所述接触点的移动由一系列接触数据表示。这些操作任选地被应用于单点接触(例如,单指接触或触笔接触)或者多点同时接触(例如,“多点触摸”/多指接触)。在一些实施方案中,接触/运动模块130和显示控制器156检测触控板上的接触。

接触/运动模块130任选地检测用户的手势输入。触敏表面上的不同手势具有不同的接触模式(例如,所检测到的接触的不同运动、计时和/或强度)。因此,任选地通过检测特定接触模式来检测手势。例如,检测单指轻击手势包括检测手指按下事件,然后在与手指按下事件相同的位置(或基本上相同的位置)处(例如,在图标位置处)检测手指抬起(抬离)事件。又如,检测触敏表面上的手指轻扫手势包括检测手指按下事件,然后检测一个或多个手指拖动事件,并且随后检测手指抬起(抬离)事件。类似地,通过检测触笔的特定接触图案来任选地检测触笔的轻击、轻扫、拖动和其他手势。

在一些实施方案中,检测手指轻击手势取决于检测手指按下事件与手指抬起事件之间的时间长度,但是与检测手指按下事件与手指抬起事件之间的手指接触强度无关。在一些实施方案中,根据确定手指按下事件与手指抬起事件之间的时间长度小于预先确定的值(例如,小于0.1秒、0.2秒、0.3秒、0.4秒或0.5秒),检测轻击手势,而不管轻击期间手指接触的强度是否达到给定的强度阈值(大于标称接触检测强度阈值),例如轻按压或深按压强度阈值。因此,手指轻击手势可以满足特定输入标准,该特定输入标准不要求接触的特征强度满足给定强度阈值以满足特定输入标准。为清楚起见,轻击手势中的手指接触通常需要满足标称接触检测强度阈值以检测到手指按下事件,低于该标称接触检测强度阈值时,不会检测到接触。类似的分析适用于通过触笔或其他接触检测轻击手势。在设备能够检测在触敏表面上方悬停的手指或触笔接触的情况下,标称接触检测强度阈值任选地不与手指或触笔与触敏表面之间的物理接触对应。

同样的概念以类似方式适用于其他类型的手势。例如,可基于满足与手势中包括的接触的强度无关或者不要求执行手势的一个或多个接触达到强度阈值以便被识别的标准来任选地检测轻扫手势、捏合手势、展开手势和/或长按压手势。例如,轻扫手势基于一个或多个接触的移动的量来检测;缩放手势基于两个或更多个接触朝彼此的移动来检测;扩放手势基于两个或更多个接触背离彼此的移动来检测;长按压手势基于触敏表面上具有少于阈值移动量的接触的持续时间来检测。因此,关于特定手势识别标准不要求接触强度满足相应的强度阈值以满足特定手势识别标准的陈述意味着特定手势识别标准能够在手势中的接触未达到相应的强度阈值时被满足,并且还能够在手势中的一个或多个接触达到或超过相应的强度阈值的情况下被满足。在一些实施方案中,基于确定在预定义时间段内检测到手指按下事件和手指抬起事件来检测轻击手势,而不考虑在预定义时间段期间接触是高于还是低于相应的强度阈值,并且基于确定接触移动大于预定义量值来检测轻扫手势,即使在接触移动结束时接触高于相应的强度阈值也是如此。即使在对手势的检测受到执行手势的接触的强度的影响的具体实施中(例如,当接触的强度高于强度阈值时,设备更快地检测到长按压,或者当接触的强度更高时,设备会延迟对轻击输入的检测),只要在接触未达到特定强度阈值的情况下可以满足识别手势的标准,则对这些手势的检测也不会要求接触达到特定强度阈值(例如,即使识别手势所需的时间量发生变化)。

在某些情况下,接触强度阈值、持续时间阈值和移动阈值以各种不同组合进行组合,以便创建启发式算法来区分针对相同输入元素或区域的两个或更多个不同手势,使得与相同输入元素的多个不同交互能够提供更丰富的用户交互和响应的集合。关于一组特定手势识别标准不要求接触的强度满足相应的强度阈值以满足特定手势识别标准的陈述不排除对其他强度相关手势识别标准进行同时评估,以识别具有当手势包括具有高于相应强度阈值的强度的接触时被满足的标准的其他手势。例如,在某些情况下,第一手势的第一手势识别标准(其不要求接触的强度满足相应的强度阈值以满足第一手势识别标准)与第二手势的第二手势识别标准(其取决于达到相应强度阈值的接触)竞争。在此类竞争中,如果第二手势的第二手势识别标准首先得到满足,则手势任选地不被识别为满足第一手势的第一手势识别标准。例如,如果在接触移动预定义的移动量之前接触达到相应的强度阈值,则检测到深按压手势而不是轻扫手势。相反,如果在接触达到相应的强度阈值之前接触移动预定义的移动量,则检测到轻扫手势而不是深按压手势。即使在此类情况下,第一手势的第一手势识别标准仍然不要求接触的强度满足相应的强度阈值以满足第一手势识别标准,因为如果接触保持低于相应的强度阈值直到手势结束(例如,具有不会增大到高于相应强度阈值的强度的接触的轻扫手势),手势将被第一手势识别标准识别为轻扫手势。因此,不要求接触的强度满足相应的强度阈值以满足特定手势识别标准的特定手势识别标准将会(a)在某些情况下,忽略相对于强度阈值的接触强度(例如,对于轻击手势而言)和/或(b)在某些情况下,如果在特定手势识别标准识别与输入对应的手势之前,一组竞争的强度相关手势识别标准(例如,对于深按压手势而言)将输入识别为与强度相关手势对应,则不能满足特定手势识别标准(例如,对于长按压手势而言),从这个意义上来讲,仍然取决于相对于强度阈值的接触强度(例如,对于与深按压手势竞争识别的长按压手势而言)。

图形模块132包括用于在触敏显示器系统112或其他显示器上渲染和显示图形的各种已知软件部件,包括用于改变所显示的图形的视觉冲击(例如,亮度、透明度、饱和度、对比度或其他视觉属性)的部件。如本文所用,术语“图形”包括可被显示给用户的任何对象,非限制性地包括文本、网页、图标(诸如包括软键的用户界面对象)、数字图像、视频、动画等。

在一些实施方案中,图形模块132存储表示待使用的图形的数据。每个图形任选地被分配有对应的代码。图形模块132从应用程序等接收用于指定待显示的图形的一个或多个代码,在必要的情况下还一起接收坐标数据和其他图形属性数据,并且然后生成屏幕图像数据,以输出至显示控制器156。

触觉反馈模块133包括用于生成指令(例如,由触觉反馈控制器161使用的指令)的各种软件部件,以响应于用户与设备100的交互而使用触觉输出发生器167在设备100上的一个或多个位置处生成触觉输出。

任选地为图形模块132的部件的文本输入模块134提供用于在各种应用程序(例如,联系人137、电子邮件140、im141、浏览器147和需要文本输入的任何其他应用程序)中输入文本的软键盘。

gps模块135确定设备的位置并提供这种信息以在各种应用程序中使用(例如,提供至用于基于位置的拨号的电话138;提供至相机143作为图片/视频元数据;以及提供至提供基于位置的服务诸如天气桌面小程序、当地黄页桌面小程序和地图/导航桌面小程序的应用程序)。

应用程序136任选地包括以下模块(或指令集)或者其子集或超集:

·联系人模块137(有时称为通讯录或联系人列表);

·电话模块138;

·视频会议模块139;

·电子邮件客户端模块140;

·即时消息(im)模块141;

·健身支持模块142;

·用于静态图像和/或视频图像的相机模块143;

·图像管理模块144;

·浏览器模块147;

·日历模块148;

·桌面小程序模块149,其任选地包括以下各项中的一者或多者:天气桌面小程序149-1、股市桌面小程序149-2、计算器桌面小程序149-3、闹钟桌面小程序149-4、词典桌面小程序149-5、和由用户获得的其他桌面小程序、以及用户创建的桌面小程序149-6;

·用于形成用户创建的桌面小程序149-6的桌面小程序创建器模块150;

·搜索模块151;

·任选地由视频播放器模块和音乐播放器模块构成的视频和音乐播放器模块152;

·记事本模块153;

·地图模块154;和/或

·在线视频模块155。

任选地存储在存储器102中的其他应用程序136的示例包括其他文字处理应用程序、其他图像编辑应用程序、绘图应用程序、呈现应用程序、支持java的应用程序、加密、数字权益管理、语音识别和语音复制。

结合触敏显示器系统112、显示控制器156、接触模块130、图形模块132和文本输入模块134,联系人模块137包括可执行指令用于管理通讯录或联系人列表(例如,存储在存储器102或存储器370中的联系人模块137的应用程序内部状态192中),包括:添加姓名到通讯录;从地址簿删除姓名;将电话号码、电子邮件地址、物理地址或其他信息与姓名关联;将图像与姓名关联;对姓名进行归类和分类;提供电话号码和/或电子邮件地址来发起和/或促进通过电话138、视频会议139、电子邮件140或即时消息141的通信;等等。

结合rf电路108、音频电路110、扬声器111、麦克风113、触敏显示器系统112、显示控制器156、接触模块130、图形模块132、和文本输入模块134,电话模块138包括用于进行以下操作的可执行指令:输入与电话号码对应的字符序列、访问通讯录137中的一个或多个电话号码、修改已输入的电话号码、拨打相应的电话号码、进行会话、以及当会话完成时断开或挂断。如上所述,无线通信任选地使用多种通信标准、协议和技术中的任一种。

结合rf电路108、音频电路110、扬声器111、麦克风113、触敏显示系统112、显示控制器156、一个或多个光学传感器164、光学传感器控制器158、接触模块130、图形模块132、文本输入模块134、联系人列表137和电话模块138,视频会议模块139包括根据用户指令来发起、进行和终止用户与一个或多个其他参与方之间的视频会议的可执行指令。

结合rf电路108、触敏显示器系统112、显示控制器156、接触模块130、图形模块132和文本输入模块134,电子邮件客户端模块140包括用于响应于用户指令来创建、发送、接收和管理电子邮件的可执行指令。结合图像管理模块144,电子邮件客户端模块140使得非常容易创建和发送具有由相机模块143拍摄的静态图像或视频图像的电子邮件。

结合rf电路108、触敏显示器系统112、显示控制器156、接触模块130、图形模块132和文本输入模块134,即时消息模块141包括用于进行以下操作的可执行指令:输入与即时消息对应的字符序列、修改先前输入的字符、传输相应即时消息(例如,使用针对基于电话的即时消息的短消息服务(sms)或多媒体消息服务(mms)协议或者使用针对基于互联网的即时消息的xmpp、simple、apple推送通知服务(apns)或imps)、接收即时消息,以及查看所接收的即时消息。在一些实施方案中,所传输和/或接收的即时消息任选地包括图形、相片、音频文件、视频文件、和/或mms和/或增强消息服务(ems)中所支持的其他附接件。如本文所用,“即时消息”是指基于电话的消息(例如,使用sms或mms发送的消息)和基于互联网的消息(例如,使用xmpp、simple、apns或imps发送的消息)两者。

结合rf电路108、触敏显示器系统112、显示控制器156、接触模块130、图形模块132、文本输入模块134、gps模块135、地图模块154以及视频和音乐播放器模块152,健身支持模块142包括可执行指令用于创建健身(例如,具有时间、距离和/或卡路里燃烧目标);与(体育设备和智能手表中的)健身传感器通信;接收健身传感器数据;校准用于监视健身的传感器;为健身选择和播放音乐;以及显示、存储和传输健身数据。

结合触敏显示器系统112、显示控制器156、一个或多个光学传感器164、光学传感器控制器158、接触模块130、图形模块132和图像管理模块144,相机模块143包括用于进行以下操作的可执行指令:捕获静态图像或视频(包括视频流)并且将它们存储到存储器102中、修改静态图像或视频的特征和/或从存储器102删除静态图像或视频。

结合触敏显示器系统112、显示控制器156、接触模块130、图形模块132、文本输入模块134和相机模块143,图像管理模块144包括用于排列、修改(例如,编辑)、或以其他方式操控、加标签、删除、展示(例如,在数字幻灯片或相册中)、以及存储静态图像和/或视频图像的可执行指令。

结合rf电路108、触敏显示器系统112、显示系统控制器156、接触模块130、图形模块132和文本输入模块134,浏览器模块147包括根据用户指令来浏览互联网(包括搜索、链接到、接收、和显示网页或其部分、以及链接到网页的附件和其他文件)的可执行指令。

结合rf电路108、触敏显示器系统112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134、电子邮件客户端模块140和浏览器模块147,日历模块148包括用于根据用户指令来创建、显示、修改和存储日历以及与日历相关联的数据(例如,日历条目、待办事项等)的可执行指令。

结合rf电路108、触敏显示器系统112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134和浏览器模块147,桌面小程序模块149是任选地由用户下载和使用的微型应用程序(例如,天气桌面小程序149-1、股市桌面小程序149-2、计算器桌面小程序149-3、闹钟桌面小程序149-4和词典桌面小程序149-5)、或由用户创建的微型应用程序(例如,用户创建的桌面小程序149-6)。在一些实施方案中,桌面小程序包括html(超文本标记语言)文件、css(层叠样式表)文件和javascript文件。在一些实施方案中,桌面小程序包括xml(可扩展标记语言)文件和javascript文件(例如,yahoo!桌面小程序)。

结合rf电路108、触敏显示器系统112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134、和浏览器模块147,桌面小程序创建器模块150包括用于创建桌面小程序(例如,将网页的用户指定部分转到桌面小程序中)的可执行指令。

结合触敏显示器系统112、显示系统控制器156、接触模块130、图形模块132和文本输入模块134,搜索模块151包括用于根据用户指令来搜索存储器102中的与一个或多个搜索条件(例如,一个或多个用户指定的搜索词)匹配的文本、音乐、声音、图像、视频和/或其他文件的可执行指令。

结合触敏显示系统112、显示系统控制器156、接触模块130、图形模块132、音频电路110、扬声器111、rf电路108和浏览器模块147,视频和音乐播放器模块152包括允许用户下载和回放以一种或多种文件格式(诸如mp3或aac文件)存储的所记录的音乐和其他声音文件的可执行指令,以及用于显示、呈现或以其他方式回放视频(例如,在触敏显示系统112上或在经由外部端口124无线连接的外部显示器上)的可执行指令。在一些实施方案中,设备100任选地包括mp3播放器诸如ipod(appleinc.的商标)的功能。

结合触敏显示器系统112、显示控制器156、接触模块130、图形模块132和文本输入模块134,记事本模块153包括用于根据用户指令来创建和管理记事本、待办事项等的可执行指令。

结合rf电路108、触敏显示器系统112、显示系统控制器156、接触模块130、图形模块132、文本输入模块134、gps模块135和浏览器模块147,地图模块154包括用于根据用户指令来接收、显示、修改和存储地图以及与地图相关联的数据(例如,驾车路线;特定位置处或附近的商店和其他兴趣点的数据;和其他基于位置的数据)的可执行指令。

结合触敏显示系统112、显示系统控制器156、接触模块130、图形模块132、音频电路110、扬声器111、rf电路108、文本输入模块134、电子邮件客户端模块140和浏览器模块147,在线视频模块155包括允许用户访问、浏览、接收(例如,通过流式传输和/或下载)、回放(例如在触摸屏112上或在无线连接的或经由外部端口124连接的外部显示器上)、发送具有至特定在线视频的链接的电子邮件、以及以其他方式管理一种或多种文件格式诸如h.264的在线视频的可执行指令。在一些实施方案中,使用即时消息模块141而不是电子邮件客户端模块140来发送特定在线视频的链接。

上述所识别的每个模块和应用对应于用于执行上述一种或多种功能以及在本申请中所描述的方法(例如,本文中所描述的计算机实现的方法和其他信息处理方法)的一组可执行指令。这些模块(即,指令集)不必以独立的软件程序、过程或模块实现,因此这些模块的各种子集任选地在各种实施方案中组合或以其他方式重新布置。在一些实施方案中,存储器102任选地存储上述模块和数据结构的子集。此外,存储器102任选地存储上文未描述的附加模块和数据结构。

在一些实施方案中,设备100是该设备上的预定义的一组功能的操作唯一地通过触摸屏和/或触控板来执行的设备。通过使用触摸屏和/或触控板作为用于操作设备100的主要输入控制设备,任选地减少设备100上的物理输入控制设备(例如,下压按钮、拨盘等等)的数量。

唯一地通过触摸屏和/或触控板来执行的预定义的一组功能任选地包括在用户界面之间的导航。在一些实施方案中,触控板在被用户触摸时将设备100从设备100上显示的任何用户界面导航到主菜单、home菜单或根菜单。在此类实施方案中,使用触控板来实现“菜单按钮”。在一些其他实施方案中,菜单按钮是物理下压按钮或者其他物理输入控制设备,而不是触控板。

图1b是示出根据一些实施方案的用于事件处理的示例性部件的框图。在一些实施方案中,存储器102(图1a中)或存储器370(图3)包括事件分类器170(例如,在操作系统126中)和相应的应用程序136-1(例如,前述应用程序136、137至155、380至390中的任一个应用程序)。

事件分类器170接收事件信息并确定要将事件信息递送到的应用程序136-1和应用程序136-1的应用程序视图191。事件分类器170包括事件监视器171和事件分配器模块174。在一些实施方案中,应用程序136-1包括应用程序内部状态192,该应用程序内部状态指示当应用程序是活动的或正在执行时在触敏显示器系统112上显示的一个或多个当前应用程序视图。在一些实施方案中,设备/全局内部状态157被事件分类器170用来确定哪个(哪些)应用程序当前是活动的,并且应用程序内部状态192被事件分类器170用来确定要将事件信息递送到的应用程序视图191。

在一些实施方案中,应用程序内部状态192包括附加信息,诸如以下各项中的一者或多者:当应用程序136-1恢复执行时将被使用的恢复信息、指示信息正被显示或准备好用于被应用程序136-1显示的用户界面状态信息、用于使得用户能够返回到应用程序136-1的前一状态或视图的状态队列,以及用户采取的先前动作的重复/撤销队列。

事件监视器171从外围设备接口118接收事件信息。事件信息包括关于子事件(例如,作为多点触摸手势的一部分的触敏显示器系统112上的用户触摸)的信息。外围设备接口118传输其从i/o子系统106或传感器诸如接近传感器166、一个或多个加速度计168和/或麦克风113(通过音频电路110)接收的信息。外围设备接口118从i/o子系统106所接收的信息包括来自触敏显示器系统112或触敏表面的信息。

在一些实施方案中,事件监视器171以预先确定的间隔将请求发送至外围设备接口118。作为响应,外围设备接口118传输事件信息。在其他实施方案中,外围设备接口118仅当存在显著事件(例如,接收到高于预先确定的噪声阈值的输入和/或接收到超过预先确定的持续时间的输入)时才传输事件信息。

在一些实施方案中,事件分类器170还包括命中视图确定模块172和/或活动事件识别器确定模块173。

当触敏显示器系统112显示多于一个视图时,命中视图确定模块172提供用于确定子事件已在一个或多个视图内的什么地方发生的软件过程。视图由用户能够在显示器上看到的控件和其他元素构成。

与应用程序相关联的用户界面的另一方面是一组视图,本文中有时也称为应用程序视图或用户界面窗口,在其中显示信息并且发生基于触摸的手势。在其中检测到触摸的(相应应用程序的)应用程序视图任选地对应于在应用程序的程序化或视图分级结构内的程序化水平。例如,在其中检测到触摸的最低水平视图任选地被称为命中视图,并且被识别为正确输入的事件集任选地至少部分地基于初始触摸的命中视图来确定,所述初始触摸开始基于触摸的手势。

命中视图确定模块172接收与基于触摸的手势的子事件相关的信息。当应用程序具有以分级结构组织的多个视图时,命中视图确定模块172将命中视图识别为应当对子事件进行处理的分级结构中的最低视图。在大多数情况下,命中视图是发起子事件(即形成事件或潜在事件的子事件序列中的第一子事件)在其中发生的最低水平视图。一旦命中视图被命中视图确定模块所识别,命中视图便通常接收与其被识别为命中视图所针对的同一触摸或输入源相关的所有子事件。

活动事件识别器确定模块173确定视图分级结构内的哪个或哪些视图应接收特定子事件序列。在一些实施方案中,活动事件识别器确定模块173确定仅命中视图应接收特定子事件序列。在其他实施方案中,活动事件识别器确定模块173确定包括子事件的物理位置的所有视图是活跃参与的视图,并因此确定所有活跃参与的视图都应接收特定子事件序列。在其他实施方案中,即使触摸子事件完全被局限到与一个特定视图相关联的区域,分级结构中的较高视图将仍然保持为活跃参与的视图。

事件分配器模块174将事件信息分配到事件识别器(例如,事件识别器180)。在包括活动事件识别器确定模块173的实施方案中,事件分配器模块174将事件信息递送到由活动事件识别器确定模块173确定的事件识别器。在一些实施方案中,事件分配器模块174在事件队列中存储事件信息,该事件信息由相应事件接收器模块182进行检索。

在一些实施方案中,操作系统126包括事件分类器170。另选地,应用程序136-1包括事件分类器170。在又一个实施方案中,事件分类器170是独立模块,或者是存储在存储器102中的另一个模块(诸如,接触/运动模块130)的一部分。

在一些实施方案中,应用程序136-1包括多个事件处理程序190和一个或多个应用程序视图191,其中的每一个都包括用于处理发生在应用程序的用户界面的相应视图内的触摸事件的指令。应用程序136-1的每个应用程序视图191包括一个或多个事件识别器180。通常,相应应用程序视图191包括多个事件识别器180。在其他实施方案中,事件识别器180中的一个或多个事件识别器是独立模块的一部分,该独立模块为诸如用户界面工具包(未示出)或应用程序136-1从中继承方法和其他属性的较高级别的对象。在一些实施方案中,相应事件处理程序190包括以下各项中的一者或多者:数据更新器176、对象更新器177、gui更新器178、和/或从事件分类器170接收的事件数据179。事件处理程序190任选地利用或调用数据更新器176、对象更新器177或gui更新器178来更新应用程序内部状态192。另选地,应用程序视图191中的一个或多个应用程序视图包括一个或多个相应事件处理程序190。另外,在一些实施方案中,数据更新器176、对象更新器177和gui更新器178中的一者或多者包括在相应应用程序视图191中。

相应的事件识别器180从事件分类器170接收事件信息(例如,事件数据179),并且从事件信息识别事件。事件识别器180包括事件接收器182和事件比较器184。在一些实施方案中,事件识别器180还包括元数据183和事件传递指令188(其任选地包括子事件递送指令)的至少一个子集。

事件接收器182接收来自事件分类器170的事件信息。事件信息包括关于子事件例如触摸或触摸移动的信息。根据子事件,事件信息还包括附加信息,诸如子事件的位置。当子事件涉及触摸的运动时,事件信息任选地还包括子事件的速率和方向。在一些实施方案中,事件包括设备从一个取向旋转到另一取向(例如,从纵向取向旋转到横向取向,或反之亦然),并且事件信息包括关于设备的当前取向(也被称为设备姿态)的对应信息。

事件比较器184将事件信息与预定义的事件或子事件定义进行比较,并且基于该比较来确定事件或子事件,或者确定或更新事件或子事件的状态。在一些实施方案中,事件比较器184包括事件定义186。事件定义186包含事件的定义(例如,预定义的子事件序列),例如事件1(187-1)、事件2(187-2)以及其他。在一些实施方案中,事件187中的子事件例如包括触摸开始、触摸结束、触摸移动、触摸取消和多点触摸。在一个示例中,事件1(187-1)的定义是被显示对象上的双击。例如,双击包括被显示对象上的预先确定时长的第一次触摸(触摸开始)、预先确定时长的第一次抬起(触摸结束)、被显示对象上的预先确定时长的第二次触摸(触摸开始)以及预先确定时长的第二次抬起(触摸结束)。在另一个示例中,事件2(187-2)的定义是被显示对象上的拖动。例如,拖动包括被显示对象上的预先确定时长的触摸(或接触)、触摸在触敏显示器系统112上的移动、以及触摸的抬离(触摸结束)。在一些实施方案中,事件还包括用于一个或多个相关联的事件处理程序190的信息。

在一些实施方案中,事件定义187包括对用于相应用户界面对象的事件的定义。在一些实施方案中,事件比较器184执行命中测试以确定哪个用户界面对象与子事件相关联。例如,在触敏显示器系统112上显示三个用户界面对象的应用程序视图中,当在触敏显示器系统112上检测到触摸时,事件比较器184执行命中测试以确定这三个用户界面对象中的哪一个用户界面对象与该触摸(子事件)相关联。如果每个所显示对象与相应事件处理程序190相关联,则事件比较器使用该命中测试的结果来确定哪个事件处理程序190应当被激活。例如,事件比较器184选择与子事件和触发该命中测试的对象相关联的事件处理程序。

在一些实施方案中,对相应事件187的定义还包括延迟动作,该延迟动作延迟事件信息的递送,直到已确定子事件序列是否确实对应于或不对应于事件识别器的事件类型。

当相应事件识别器180确定子事件序列不与事件定义186中的任何事件匹配时,该相应事件识别器180进入事件不可能、事件失败或事件结束状态,在此之后忽略基于触摸的手势的后续子事件。在这种情况下,对于命中视图保持活动的其他事件识别器(如果有的话)继续跟踪并处理持续进行的基于触摸的手势的子事件。

在一些实施方案中,相应事件识别器180包括具有指示事件递送系统应当如何执行对活跃参与的事件识别器的子事件递送的可配置属性、标记和/或列表的元数据183。在一些实施方案中,元数据183包括指示事件识别器彼此如何交互或如何能够交互的可配置属性、标志和/或列表。在一些实施方案中,元数据183包括指示子事件是否递送到视图或程序化分级结构中的不同层级的可配置属性、标志和/或列表。

在一些实施方案中,当事件的一个或多个特定子事件被识别时,相应事件识别器180激活与事件相关联的事件处理程序190。在一些实施方案中,相应事件识别器180将与事件相关联的事件信息递送到事件处理程序190。激活事件处理程序190不同于将子事件发送(和延期发送)到相应命中视图。在一些实施方案中,事件识别器180抛出与所识别的事件相关联的标记,并且与该标记相关联的事件处理程序190获取该标记并执行预定义过程。

在一些实施方案中,事件递送指令188包括递送关于子事件的事件信息而不激活事件处理程序的子事件递送指令。相反,子事件递送指令将事件信息递送到与子事件序列相关联的事件处理程序或者递送到活跃参与的视图。与子事件序列或与活跃参与的视图相关联的事件处理程序接收事件信息并执行预先确定的过程。

在一些实施方案中,数据更新器176创建并更新在应用程序136-1中使用的数据。例如,数据更新器176对联系人模块137中所使用的电话号码进行更新,或者对视频或音乐播放器模块152中所使用的视频文件进行存储。在一些实施方案中,对象更新器177创建和更新在应用程序136-1中使用的对象。例如,对象更新器177创建新的用户界面对象或更新用户界面对象的位置。gui更新器178更新gui。例如,gui更新器178准备显示信息,并且将显示信息发送到图形模块132用以显示在触敏显示器上。

在一些实施方案中,事件处理程序190包括数据更新器176、对象更新器177和gui更新器178或者具有对它们的访问权限。在一些实施方案中,数据更新器176、对象更新器177和gui更新器178被包括在相应应用程序136-1或应用程序视图191的单个模块中。在其他实施方案中,它们被包括在两个或更多个软件模块中。

应当理解,关于触敏显示器上的用户触摸的事件处理的上述论述还适用于利用输入设备来操作多功能设备100的其他形式的用户输入,并不是所有用户输入都是在触摸屏上发起的。例如,任选地与单次或多次键盘按下或按住协作的鼠标移动和鼠标按钮按下;触控板上的接触移动,诸如轻击、拖动、滚动等;触笔输入;设备的移动;口头指令;检测到的眼睛移动;生物特征输入;和/或它们的任何组合任选地被用作对应于限定要识别的事件的子事件的输入。

图1c是示出根据一些实施方案,使用行为模型来修改用户界面的示例性部件的框图。在一些实施方案中,存储器102(图1a中)或370(图3)包括行为模型模块181(例如,在操作系统126中)。

行为模型模块181包括用于修改用户界面的一个或多个输出属性195的一个或多个行为模型189。在一些实施方案中,行为模型189包括不同的行为模型,诸如行为模型1(191-1)、行为模型2(191-2)和行为模型3(191-3)。在一些实施方案中,创建相应行为模型的实例,用于使用相应行为模型修改输出属性。行为模型实例193存储行为模型的一个或多个实例,诸如实例1(193-1)和实例2(193-2)。在一些实施方案中,行为模型的实例包括指定行为模型的类型的信息(例如,指示相应行为模型实例对应的行为模型191的特定行为模型)。在一些实施方案中,行为模型的实例包括指定行为模型的状态的信息(例如,行为模型的一个或多个参数)。行为模型191(或行为模型实例193)用于修改相应的输出属性195。输出属性195存储用户界面的输出属性,诸如输出属性1(196-1)和输出属性2(197-1)。在一些实施方案中,输出属性195存储用户界面的输出属性相对于时间的导数,诸如相应输出属性相对于时间的一阶导数d/dt(输出属性1)(196-2),以及相应输出属性相对于时间的二阶导数d2/dt2(输出属性1)(196-3)。在一些实施方案中,输出属性相对于时间的一阶导数和二阶导数被用于产生具有较少剧烈变化的更无缝(例如,更平滑)的用户界面行为。

图1d是示出根据一些实施方案,用于使用行为模型来修改用户界面的示例性应用程序独立软件模块的框图。电子设备100使用应用程序独立软件模块来处理输入参数。

图1d示出,设备100的一个或多个输入设备(例如,触敏显示系统112(图1a)、其他输入或控制设备116(图1a)、键盘/鼠标350(图3)和/或触控板355(图3))接收对应于用户与设备100的交互的用户输入,诸如输入1和输入2。响应于接收到用户输入,输入设备生成并向一个或多个应用程序(例如,应用程序1(136-1))发送描述用户输入的输入参数。在一些实施方案中,应用程序(例如,应用程序1(136-1))包括应用程序独立软件模块的实例(例如,应用程序独立软件模块220-1(实例1))。此外,应用程序包括特定于应用程序的应用程序内核(例如,应用程序1(136-1)包括应用程序内核1(230-1))。例如,应用程序内核1(230-1)包括用于执行特定于应用程序1(136-1)的操作的指令。在一些实施方案中,输入参数被发送至应用程序内的应用程序独立软件模块实例(例如,应用程序独立软件模块220-1(实例1))。在一些实施方案中,应用程序独立软件模块220与应用程序不同且分开,并且任选地与设备100的操作系统(例如,操作系统126,图1a和图3)不同并且分开。在一些实施方案中,应用程序(例如,应用程序1(136-1))访问和/或包括行为模型模块(例如,行为模型模块181,图1c)的一个或多个部分,诸如存储的输出属性(例如,输出属性295-1、295-2和295-3)和存储的行为模型的实例(例如,行为模型实例293-1、293-2和293-3)。

在一些实施方案中,应用程序独立软件模块包括行为模型的实例(例如,行为模型1的第一实例(293-1)、行为模型1的第二实例(293-2)和行为模型2的第一实例(293-3))。在一些实施方案中,使用相应的行为模型来修改表示应用程序用户界面中的输出的类型的输出属性,其中该输出用于利用一个或多个输出设备(例如,触敏显示系统112(图1a)、扬声器111(图1a)、一个或多个触觉输出发生器167(图1a)和357(图3)和/或显示器340(图3))提供用户界面行为(例如,显示和/或更新用户界面,生成音频输出,生成触觉输出等)。在一些实施方案中,相应的行为模型使用发送到应用程序独立软件模块的一个或多个输入参数(例如,由其驱动)。在一些实施方案中,相应的行为模型用于修改输出属性相对于时间的一阶导数,和/或输出属性相对于时间的二阶导数。例如,行为模型1(实例1)(293-1)用于修改输出属性(op)1的值295-1,d/dt(op1)和d2/dt2(op1);行为模型1(实例2)(293-2)用于修改输出属性(op)2的值295-2,d/dt(op2)和d2/dt2(op2);行为模型2(实例1)(293-3)用于修改输出属性(op)3的值295-3,d/dt(op3)和d2/dt2(op3)。在一些实施方案中,将输出属性的先前值发送(例如,返回)到行为模型并用于确定输出属性的更新值。

图2示出了根据一些实施方案的具有触摸屏(例如,图1a的触敏显示器系统112)的便携式多功能设备100。触摸屏任选地在用户界面(ui)200内显示一个或多个图形。在这些实施方案中以及在下文中描述的其他实施方案中,用户能够通过例如利用一个或多个手指202(在图中未按比例绘制)或一个或多个触笔203(在图中未按比例绘制)在图形上作出手势来选择这些图形中的一个或多个图形。在一些实施方案中,当用户中断与一个或多个图形的接触时,将发生对一个或多个图形的选择。在一些实施方案中,手势任选地包括一次或多次轻击、一次或多次轻扫(从左向右、从右向左、向上和/或向下)和/或已与设备100发生接触的手指的滚动(从右向左、从左向右、向上和/或向下)。在一些具体实施中或在一些情况下,不经意地与图形接触不会选择图形。例如,当与选择对应的手势是轻击时,在应用程序图标上方扫动的轻扫手势任选地不会选择对应的应用程序。

设备100任选地还包括一个或多个物理按钮,诸如“home”按钮、或菜单按钮204。如前所述,菜单按钮204任选地用于导航到任选地在设备100上被执行的一组应用程序中的任何应用程序136。另选地,在一些实施方案中,菜单按钮被实现为被显示在触摸屏显示器上的gui中的软键。

在一些实施方案中,设备100包括触摸屏显示器、菜单按钮204(有时称为主屏幕按钮204)、用于使设备通电/断电和用于锁定设备的下压按钮206、音量调节按钮208、用户身份模块(sim)卡槽210、耳麦插孔212和对接/充电外部端口124。下压按钮206任选地用于通过压下该按钮并且将该按钮保持在压下状态持续预定义的时间间隔来对设备进行开/关机;通过压下该按钮并在该预定义的时间间隔过去之前释放该按钮来锁定设备;和/或对设备进行解锁或发起解锁过程。在一些实施方案中,设备100还通过麦克风113来接受用于激活或停用某些功能的语音输入。设备100还任选地包括用于检测触敏显示器系统112上的接触的强度的一个或多个接触强度传感器165,和/或用于为设备100的用户生成触觉输出的一个或多个触觉输出发生器167。

图3是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备的框图。设备300不必是便携式的。在一些实施方案中,设备300是膝上型电脑、台式计算机、平板电脑、多媒体播放器设备、导航设备、教育设备(诸如儿童学习玩具)、游戏系统或控制设备(例如,家用控制器或工业用控制器)。设备300通常包括一个或多个处理单元(cpu)310、一个或多个网络或其他通信接口360、存储器370和用于将这些部件互联的一根或多根通信总线320。通信总线320任选地包括使系统部件互连并且控制系统部件之间的通信的电路(有时称作芯片组)。设备300包括具有显示器340的输入/输出(i/o)接口330,该显示器通常是触摸屏显示器。i/o接口330还任选地包括键盘和/或鼠标(或其他指向设备)350和触控板355、用于在设备300上生成触觉输出的触觉输出发生器357(例如,类似于以上参考图1a所述的一个或多个触觉输出发生器167)、传感器359(例如,光学传感器、加速度传感器、接近传感器、触敏传感器、和/或类似于以上参考图1a所述的一个或多个接触强度传感器165的接触强度传感器)。存储器370包括高速随机存取存储器,诸如dram、sram、ddrram或其他随机存取固态存储器设备;并且任选地包括非易失性存储器,诸如一个或多个磁盘存储设备、光盘存储设备、闪存存储器设备或其他非易失性固态存储设备。存储器370任选地包括远离cpu310定位的一个或多个存储设备。在一些实施方案中,存储器370存储与便携式多功能设备100(图1a)的存储器102中所存储的程序、模块和数据结构类似的程序、模块、和数据结构,或它们的子集。此外,存储器370任选地存储在便携式多功能设备100的存储器102中不存在的附加程序、模块和数据结构。例如,设备300的存储器370任选地存储绘图模块380、呈现模块382、文字处理模块384、网站创建模块386、盘编辑模块388、和/或电子表格模块390,而便携式多功能设备100(图1a)的存储器102任选地不存储这些模块。

图3中上述所识别的元件中的每个元件任选地存储在先前提到的存储器设备中的一个或多个存储器设备中。上述所识别的模块中的每个模块对应于用于执行上述功能的一组指令。上述所识别的模块或程序(即,指令集)不必被实现为单独的软件程序、过程或模块,因此这些模块的各种子集任选地在各种实施方案中组合或以其他方式重新布置。在一些实施方案中,存储器370任选地存储上述模块和数据结构的子集。此外,存储器370任选地存储上文未描述的附加模块和数据结构。

现在将注意力转到任选地在便携式多功能设备100上实现的用户界面(“ui”)的实施方案。

图4a示出根据一些实施方案的便携式多功能设备100上的应用程序菜单的示例性用户界面。类似的用户界面任选地在设备300上实现。在一些实施方案中,用户界面400包括以下元件或者其子集或超集:

·一种或多种无线通信诸如蜂窝信号和wi-fi信号的一个或多个信号强度指示符;

·时间;

·蓝牙指示符;

·电池状态指示符;

·具有针对常用应用程序的图标的托盘408,该图标诸如:

ο电话模块138的被标记为“电话”的图标416,该图标416任选地包括未接来电或语音留言的数量的指示符414;

ο电子邮件客户端模块140的被标记为“邮件”的图标418,该图标418任选地包括未读电子邮件的数量的指示符410;

ο浏览器模块147的标记为“浏览器”的图标420;以及

ο视频和音乐播放器模块152的被标记为“音乐”的图标422;以及

·其他应用的图标,诸如:

οim模块141的被标记为“消息”的图标424;

ο日历模块148的被标记为“日历”的图标426;

ο图像管理模块144的被标记为“照片”的图标428;

ο相机模块143的被标记为“相机”的图标430;

ο在线视频模块155的被标记为“在线视频”的图标432;

ο股市桌面小程序149-2的被标记为“股市”的图标434;

ο地图模块154的被标记为“地图”的图标436;

ο天气桌面小程序149-1的被标记为“天气”的图标438;

ο闹钟桌面小程序149-4的被标记为“时钟”的图标440;

ο健身支持模块142的被标记为“健身支持”的图标442;

ο记事本模块153的标记为“记事本”的图标444;以及

ο用于设置应用程序或模块的图标446,该图标提供对设备100及其各种应用程序136的设置的访问。

应当注意,图4a中示出的图标标签仅仅是示例性的。例如,其他标签任选地用于各种应用图标。在一些实施方案中,相应应用程序图标的标签包括与该相应应用程序图标对应的应用程序的名称。在一些实施方案中,特定应用程序图标的标签不同于与该特定应用程序图标对应的应用程序的名称。

图4b示出了具有与显示器450分开的触敏表面451(例如,图3中的平板或触控板355)的设备(例如,图3中的设备300)上的示例性用户界面。尽管将参考触摸屏显示器112(其中组合了触敏表面和显示器)上的输入给出随后的许多示例,但是在一些实施方案中,设备检测与显示器分开的触敏表面上的输入,如图4b中所示。在一些实施方案中,触敏表面(例如,图4b中的451)具有与显示器(例如,450)上的主轴线(例如,图4b中的453)对应的主轴线(例如,图4b中的452)。根据这些实施方案,设备检测与显示器上相应位置对应的位置处的与触敏表面451的接触(例如,图4b中的460和462)(例如,在图4b中,460对应于468并且462对应于470)。这样,在触敏表面(例如,图4b中的451)与多功能设备的显示器(例如,图4b中的450)是分开的时侯,由设备在触敏表面上所检测到的用户输入(例如,接触460和462以及它们的移动)被该设备用于操纵显示器上的用户界面。应当理解,类似的方法任选地用于本文所述的其他用户界面。

另外,虽然主要是参考手指输入(例如,手指接触、单指轻击手势、手指轻扫手势等)来给出下面的示例,但是应当理解的是,在一些实施方案中,这些手指输入中的一个或多个手指输入由来自另一输入设备的输入(例如,基于鼠标的输入或触笔输入)替换。例如,轻扫手势任选地由鼠标点击(例如,而不是接触),之后是光标沿着轻扫的路径的移动(例如,而不是接触的移动)替代。又如,轻击手势任选地由在光标位于轻击手势的位置上方时的鼠标点击(例如,代替对接触的检测,之后是停止检测接触)替代。类似地,当同时检测到多个用户输入时,应当理解的是,多个计算机鼠标任选地被同时使用,或鼠标和手指接触任选地被同时使用。在一些实施方案中,用户使用第一输入设备来提供输入,并且切换至第二输入设备以继续提供输入。在一些实施方案中,用户界面中的改变在从第一输入设备过渡到第二输入设备期间平滑地改变,以提供更无缝的用户体验。

如在本说明书和权利要求书中所使用的,术语触敏表面上的接触的“强度”是指触敏表面上的接触(例如,手指接触或触笔接触)的力或压力(每单位面积的力),或者是指触敏表面上的接触的力或压力的替代物(代用物)。接触的强度具有值范围,该值范围包括至少四个不同的值并且更典型地包括上百个不同的值(例如,至少256个)。接触的强度任选地使用各种方法和各种传感器或传感器的组合来确定(或测量)。例如,在触敏表面下方或相邻于触敏表面的一个或多个力传感器任选地用于测量触敏表面上的不同点处的力。在一些具体实施中,来自多个力传感器的力测量被合并(例如,加权平均或者加和),以确定估计的接触力。类似地,触笔的压敏顶端任选地用于确定触笔在触敏表面上的压力。另选地,在触敏表面上检测到的接触区域的大小和/或其变化、接触附近的触敏表面的电容和/或其变化以及/或者接触附近的触敏表面的电阻和/或其变化任选地被用作触敏表面上的接触的力或压力的替代物。在一些具体实施中,接触力或压力的替代物测量直接用于确定是否已经超过强度阈值(例如,强度阈值以对应于替代物测量的单位来描述)。在一些具体实施中,将接触力或压力的替代测量值转换为预估力或压力,并且使用预估力或压力确定是否已超过强度阈值(例如,强度阈值是以压力单位测量的压力阈值)。使用接触的强度作为用户输入的属性,从而允许用户访问用户在用于(例如,在触敏显示器上)显示示能表示和/或接收用户输入(例如,经由触敏显示器、触敏表面或物理控件/机械控件诸如旋钮或按钮)的实地面积有限的尺寸更小的设备上本来不能容易地访问的附加设备功能。

在一些实施方案中,接触/运动模块130使用一组一个或多个强度阈值来确定操作是否已由用户执行(例如,确定用户是否已“点击”图标)。在一些实施方案中,根据软件参数来确定强度阈值的至少一个子集(例如,强度阈值不是由特定物理致动器的激活阈值来确定的,并且可在不改变设备100的物理硬件的情况下被调节)。例如,在不改变触控板或触摸屏显示器硬件的情况下,触控板或触摸屏显示器的鼠标“点击”阈值可被设置为预定义阈值的大范围中的任一个阈值。另外,在一些具体实施中,设备的用户提供有用于调节一组强度阈值中的一个或多个强度阈值(例如,通过调节各个强度阈值和/或通过利用对“强度”参数的系统级点击来一次调节多个强度阈值)的软件设置。

如说明书和权利要求中所使用的,接触的“特征强度”这一术语是指基于接触的一个或多个强度的接触的特征。在一些实施方案中,特征强度基于多个强度样本。特征强度任选地基于相对于预定义事件(例如,在检测到接触之后,在检测到接触抬离之前,在检测到接触开始移动之前或之后,在检测到接触结束之前,在检测到接触的强度增大之前或之后和/或在检测到接触的强度减小之前或之后)而言在预先确定的时间段(例如,0.05秒、0.1秒、0.2秒、0.5秒、1秒、2秒、5秒、10秒)期间采集的预定义数量的强度样本或一组强度样本。接触的特征强度任选地基于以下各项中的一者或多者:接触强度的最大值、接触强度的均值、接触强度的平均值、接触强度的前10%处的值、接触强度的半最大值、接触强度的90%最大值、通过在预定义时间段上或从预定义时间开始低通滤波接触强度而生成的值等。在一些实施方案中,在确定特征强度时使用接触的持续时间(例如,在特征强度是接触的强度在时间上的平均值时)。在一些实施方案中,将特征强度与一组一个或多个强度阈值进行比较,以确定用户是否已执行操作。例如,该组一个或多个强度阈值可包括第一强度阈值和第二强度阈值。在该示例中,特征强度未超过第一强度阈值的接触导致第一操作,特征强度超过第一强度阈值但未超过第二强度阈值的接触导致第二操作,并且特征强度超过第二强度阈值的接触导致第三操作。在一些实施方案中,使用特征强度和一个或多个强度阈值之间的比较来确定是否要执行一个或多个操作(例如,是否执行相应选项或放弃执行相应操作),而不是用于确定执行第一操作还是第二操作。

在一些实施方案中,识别手势的一部分以用于确定特征强度。例如,触敏表面可接收连续轻扫接触,该连续轻扫接触从起始位置过渡并达到结束位置(例如拖动手势),在该结束位置处,接触的强度增大。在该示例中,接触在结束位置处的特征强度可仅基于连续轻扫接触的一部分,而不是整个轻扫接触(例如,仅结束位置处的轻扫接触的一部分)。在一些实施方案中,可在确定接触的特征强度之前向轻扫手势的强度应用平滑化算法。例如,平滑化算法任选地包括以下各项中的一种或多种:不加权滑动平均平滑化算法、三角平滑化算法、中值滤波器平滑化算法和/或指数平滑化算法。在一些情况下,这些平滑化算法消除了轻扫接触的强度中的窄的尖峰或凹陷,以实现确定特征强度的目的。

本文所述的用户界面图任选地包括各种强度图,这些强度图示出触敏表面上的接触相对于一个或多个强度阈值(例如,接触检测强度阈值it0、轻按压强度阈值itl、深按压强度阈值itd(例如,至少初始高于itl)和/或一个或多个其他强度阈值(例如,比itl低的强度阈值ith))的当前强度。该强度图通常不是所显示的用户界面的一部分,但是被提供以帮助解释所述图。在一些实施方案中,轻按压强度阈值对应于这样的强度:在该强度下设备将执行通常与点击物理鼠标或触控板触控板的按钮相关联的操作。在一些实施方案中,深按压强度阈值对应于这样的强度:在该强度下设备将执行与通常与点击物理鼠标或触控板的按钮相关联的操作不同的操作。在一些实施方案中,当检测到特征强度低于轻按压强度阈值(例如,并且高于标称接触检测强度阈值it0,比标称接触检测强度阈值低的接触不再被检测到)的接触时,设备将根据接触在触敏表面上的移动来移动焦点选择器,而不执行与轻按压强度阈值或深按压强度阈值相关联的操作。一般来讲,除非另有陈述,否则这些强度阈值在不同组的用户界面附图之间是一致的。

在一些实施方案中,设备对设备所检测到的输入的响应取决于基于输入期间的接触强度的标准。例如,对于一些“轻按压”输入,在输入期间超过第一强度阈值的接触的强度触发第一响应。在一些实施方案中,设备对由设备所检测到的输入的响应取决于包括输入期间的接触强度和基于时间的标准两者的标准。例如,对于一些“深按压”输入,只要在满足第一强度阈值与满足第二强度阈值之间经过延迟时间,在输入期间超过大于轻按压的第一强度阈值的第二强度阈值的接触的强度便触发第二响应。该延迟时间的持续时间通常小于200ms(毫秒)(例如,40ms、100ms、或120ms,这取决于第二强度阈值的量值,其中该延迟时间随着第二强度阈值增大而增大)。该延迟时间帮助避免意外地识别深按压输入。又如,对于一些“深按压”输入,在达到第一强度阈值之后将出现敏感度降低的时间段。在该敏感度降低的时间段期间,第二强度阈值增大。第二强度阈值的这种暂时增大还有助于避免意外深按压输入。对于其他深按压输入,对检测到深按压输入的响应不取决于基于时间的标准。

在一些实施方案中,输入强度阈值和/或对应输出中的一者或多者基于一个或多个因素(诸如用户设置、接触运动、输入定时、应用运行、施加强度时的速率、同时输入的数量、用户历史、环境因素(例如,环境噪声)、焦点选择器位置等)而变化。示例因素在美国专利申请14/399,606和14/624,296中有所描述,这些美国专利申请全文以引用方式并入本文。

例如,图4c示出了部分地基于触摸输入476随时间的强度而随时间改变的动态强度阈值480。动态强度阈值480是两个分量的总和:在从触摸输入476初始被检测到开始的预定义的延迟时间p1之后随时间衰减的第一分量474和随时间而跟踪触摸输入476的强度的第二分量478。第一分量474的初始高强度阈值减少意外触发“深按压”响应,同时仍然允许在触摸输入476提供足够强度的情况下进行即时“深按压”响应。第二分量478减少通过触摸输入的逐渐的强度波动而无意触发“深按压”响应。在一些实施方案中,在触摸输入476满足动态强度阈值480时(例如,在图4c中的点481处),触发“深按压”响应。

图4d示出了另一个动态强度阈值486(例如,强度阈值id)。图4d还示出了两个其他强度阈值:第一强度阈值ih和第二强度阈值il。在图4d中,尽管触摸输入484在时间p2之前满足第一强度阈值ih和第二强度阈值il,但是直到在时间482处经过延迟时间p2才提供响应。同样在图4d中,动态强度阈值486随时间衰减,其中衰减在从时间482(触发了与第二强度阈值il相关联的响应的时候)已经过预定义的延迟时间p1之后的时间488开始。这种类型的动态强度阈值减少紧接在触发与较低阈值强度(诸如第一强度阈值ih或第二强度阈值il)相关联的响应之后或与其同时意外触发与动态强度阈值id相关联的响应。

图4e示出了另一个动态强度阈值492(例如,强度阈值id)。在图4e中,在从触摸输入490被初始检测到的时候已经过延迟时间p2之后,触发与强度阈值il相关联的响应。同时,动态强度阈值492在从触摸输入490被初始检测到的时候已经过预定义的延迟时间p1之后衰减。因此,在触发与强度阈值il相关联的响应之后降低触摸输入490的强度,接着在不释放触摸输入490的情况下增大触摸输入490的强度可触发与强度阈值id相关联的响应(例如,在时间494处),即使当触摸输入490的强度低于另一强度阈值(例如,强度阈值il)时也是如此。

接触特征强度从低于轻按压强度阈值itl的强度增大到介于轻按压强度阈值itl与深按压强度阈值itd之间的强度有时被称为“轻按压”输入。接触的特征强度从低于深按压强度阈值itd的强度增大到高于深按压强度阈值itd的强度有时称为“深按压”输入。接触特征强度从低于接触检测强度阈值it0的强度增大到介于接触检测强度阈值it0与轻按压强度阈值itl之间的强度有时被称为检测到触摸表面上的接触。接触的特征强度从高于接触检测强度阈值it0的强度减小到低于接触检测强度阈值it0的强度有时被称为检测到接触从触摸表面抬离。在一些实施方案中,it0为零。在一些实施方案中,it0大于零在一些例示中,阴影圆或椭圆用于表示触敏表面上的接触的强度。在一些例示中,没有阴影的圆或椭圆用于表示触敏表面上的相应接触而不指定相应接触的强度。

在本文中所述的一些实施方案中,响应于检测到包括相应按压输入的手势或响应于检测到利用相应接触(或多个接触)所执行的相应按压输入来执行一个或多个操作,其中至少部分地基于检测到该接触(或多个接触)的强度增大到高于按压输入强度阈值而检测到该相应按压输入。在一些实施方案中,响应于检测到相应接触的强度增大到高于按压输入强度阈值来执行相应操作(例如,在相应按压输入的“向下冲程”上执行相应操作)。在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于按压输入强度阈值,并且响应于检测到相应接触的强度随后减小到低于按压输入阈值来执行相应操作(例如,在相应按压输入的“向上冲程”上执行相应操作)。

在一些实施方案中,设备采用强度滞后以避免有时被称为“抖动”的意外输入,其中设备限定或选择与按压输入强度阈值具有预定义关系的滞后强度阈值(例如,滞后强度阈值比按压输入强度阈值低x个强度单位,或滞后强度阈值是按压输入强度阈值的75%、90%或某个合理比例)。因此,在一些实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接触的强度随后减小到低于对应于按压输入强度阈值的滞后强度阈值,并且响应于检测到相应接触的强度随后减小到低于滞后强度阈值来执行相应操作(例如,在相应按压输入的“向上冲程”上执行相应操作)。类似地,在一些实施方案中,仅在设备检测到接触强度从等于或低于滞后强度阈值的强度增大到等于或高于按压输入强度阈值的强度并且任选地接触强度随后减小到等于或低于滞后强度的强度时才检测到按压输入,并且响应于检测到按压输入(例如,根据环境,接触强度增大或接触强度减小)来执行相应操作。

为了容易解释,任选地响应于检测到以下情况而触发对响应于与按压输入强度阈值相关联的按压输入或响应于包括按压输入的手势而执行的操作的描述:接触的强度增大到高于按压输入强度阈值、接触的强度从低于滞后强度阈值的强度增大到高于按压输入强度阈值的强度、接触的强度减小到低于按压输入强度阈值、或接触的强度减小到低于与按压输入强度阈值对应的滞后强度阈值。另外,在将操作描述为响应于检测到接触的强度减小到低于按压输入强度阈值而执行的示例中,任选地响应于检测到接触的强度减小到低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行操作。如上所述,在一些实施方案中,对这些操作的触发还取决于满足基于时间的标准(例如,在满足第一强度阈值和满足第二强度阈值之间已经过延迟时间)。

用户界面和相关联的过程

现在将注意力转向可在具有显示器、触敏表面、用于生成触觉输出的(可选的)一个或多个触觉输出发生器以及用于检测与触敏表面的接触的强度的(可选的)一个或多个传感器的电子设备诸如便携式多功能设备100或设备300上实现的用户界面(“ui”)和相关联的过程的实施方案。

图5a-图5ba示出了根据一些实施方案,用于提供无缝用户界面过渡的示例性用户界面,包括在用户界面中执行的操作之间的过渡。这些附图中的用户界面被用于例示下面描述的过程,包括图6a-图6f、图7a-图7c和图8a-图8d中的过程。为了便于解释,将参考在具有触敏显示器系统112的设备上执行的操作来论述实施方案中的一些实施方案。在此类实施方案中,焦点选择器为任选地:相应手指或触笔接触、对应于手指或触笔接触的表示点(例如,相应接触的重心或与相应接触相关联的点)、或在触敏显示器系统112上所检测到的两个或更多个接触的重心。然而,任选地在具有显示器450和单独的触敏表面451的设备上响应于当在显示器450上显示附图中示出的用户界面连同焦点选择器时检测到触敏表面451上的接触而执行类似的操作。

图5a-图5n示出了响应于所检测到的用户输入来提供无缝用户界面过渡的示例性用户界面。图5a示出了邮件应用程序的用户界面500(例如,电子邮件客户端模块140,图1a)。用户界面500包括可滚动电子邮件列表,该电子邮件列表包括多封电子邮件,其中包括电子邮件501。

图5b-图5n示出了用户界面500响应于检测到用户输入和用户输入的改变而发生的改变。图5b-图5n包括位置图506,其示出了电子邮件列表的当前显示部分相对于时间的位置(输出属性)。图5b-图5n还包括速度图508,其示出了随时间推移改变的电子邮件列表的当前速度(例如,滚动速度)。此外,图5b-图5n包括加速度图510,其示出了随时间推移的电子邮件列表的当前加速度(例如,滚动速度的变化速率)。

图5b示出了在对应于电子邮件列表的位置(例如,与电子邮件列表中的电子邮件501对应的位置)处检测到的接触502。在图5b中,电子邮件列表的所显示部分是电子邮件列表的最顶部部分,对应于位置图506中所示的电子邮件列表内的位置。因此,在滚动条区域中的最顶部位置处显示滚动缩略图504。电子邮件列表的初始速度为负,如速度图508中所示,对应于向下滚动。电子邮件列表的初始加速度如加速度图510中所示。当检测到接触502时,根据接触502的竖直位置的改变而直接修改(例如,经由通过接触502进行的直接操纵)电子邮件列表的(竖直)位置y。在一些实施方案中,电子邮件列表的y位置yobject对应于接触502的y位置yinput。任选地,根据接触502的竖直速度的改变而直接修改电子邮件列表的速度dy/dt(例如,将电子邮件列表的速度设定为匹配接触502的竖直速度)。另选地,通过表示电子邮件列表随时间推移的位置的值来计算电子邮件列表的速度v1,而不是直接匹配接触502的实测速度。在一些实施方案中,根据接触502的加速度的改变直接修改电子邮件列表的加速度d2y/dt2(例如,将电子邮件列表的加速度设定为匹配接触502的竖直加速度)。另选地,通过表示电子邮件列表随时间推移的位置和/或速度的值来计算电子邮件列表的加速度a1,而不是直接匹配接触502的竖直加速度。

图5c示出了接触502从其如图5b所示的位置沿向上方向的移动。根据接触502的位置的改变,将电子邮件列表的位置从y1到y2改变对应量(例如,接触502相对于电子邮件501保持相同的相对位置)。根据电子邮件列表的位置的改变,电子邮件列表的速度被计算为v2,并且电子邮件列表的加速度被计算为a2。

图5d示出了当接触502以非零速度(例如,轻弹手势)在触敏表面上移动时接触502的抬离。响应于检测到接触502的抬离,设备停止经由直接操纵修改电子邮件列表的位置(以及任选的速度和/或加速度),并且开始使用摩擦/反弹(bounce)模型512(本文也称为摩擦/惯性行为模型)修改电子邮件列表的位置(以及任选的速度和/或加速度)。在抬离时,设备开始基于电子邮件列表的位置y2、速度v2和加速度a2的最后确定的值,使用摩擦/反弹模型512来修改电子邮件列表的位置、速度和加速度,其中最后确定的值是基于在抬离之前由接触502刚刚进行的直接操纵确定的。因此,电子邮件列表的位置、速度和加速度在整个过渡期间是连续的,由边界511表示,从根据接触502的直接操纵对值进行修改到在接触502抬离之后使用摩擦/反弹模型512对值进行修改。在一些情况下,当用户输入显著改变时(例如,在接触502抬离时),更新用户界面以直接匹配用户输入中的改变给用户界面带来突然而剧烈的变化。当响应于用户输入的改变而改变行为模型时,在行为模型之间传输输出属性的值允许用户界面实现渐进和平滑的更新(例如,在不突然剧烈地改变用户界面的情况下),同时表现出物理上直观的行为。

图5e-图5g示出了使用摩擦/反弹模型512(例如,在用户界面500上未检测到接触的情况下)根据电子邮件列表的位置(y)、速度(dy/dt)和加速度(d2y/dt2)的修改来连续移动电子邮件列表。摩擦/反弹模型512修改电子邮件列表的位置、速度和加速度,以便模拟电子邮件列表的移动,就像电子邮件列表是受到摩擦的质量块(例如,沿着具有非零摩擦系数的表面移动)一样。加速度图510示出,电子邮件列表的加速度在与电子邮件列表的移动方向(向下滚动,负速度)相反的方向(向上,具有正加速度)上保持恒定,值为a3、a4和a5(例如,全部等于a2)。速度图508示出,根据恒定的相对(正)加速度,电子邮件列表的(负)速度线性增加至v3、v4,然后为v5。位置图506示出,根据线性增大的负速度,电子邮件列表的位置以抛物线方式降低至y3、y4,然后为y5。

图5h-图5i示出了在对应于用户界面500的菜单栏的位置处检测到的后续接触514(图5h)和接触514的抬离(图5i)。在图5h-图5i所示的示例中,接触514是轻击手势的一部分,并且对应于滚动到电子邮件列表顶部的请求。响应于检测到轻击手势,在接触514抬离时,设备停止使用摩擦/反弹模型512修改电子邮件列表的位置、速度和加速度,如图5h所示,并开始使用质量块/弹簧模型516修改电子邮件列表的位置、速度和加速度,如图5i所示。在接触514抬离时,设备开始基于在抬离之前使用摩擦/反弹模型512确定的电子邮件列表的位置y6、速度v6和加速度a6的最后确定的值,来使用质量块/弹簧模型516,修改电子邮件列表的位置、速度和加速度。因此,电子邮件列表的位置、速度和加速度在整个过渡期间是连续的,由边界517表示,从在检测到接触514之前使用摩擦/反弹模型512对值进行修改到在检测到接触514后使用质量块/弹簧模型516对值进行修改。如上文参考图5d所述,在一些情况下,在用户输入显著改变时(例如,在后续接触514的下触(touchdown)时),更新用户界面以直接匹配用户输入的改变给用户界面带来突然而剧烈的变化(例如,突然反转电子邮件列表的移动方向)。当响应于用户输入的改变而改变行为模型时,在行为模型之间传输输出属性的值允许在用户界面保持对用户输入做出响应的同时,用户界面实现渐进和平滑的更新(例如,在不突然剧烈地改变用户界面的情况下),同时表现出物理上直观的行为。

图5j-图5n示出了响应于滚动到电子邮件列表顶部的请求并根据使用质量块/弹簧模型516(例如,在用户界面500中未检测到接触时)对电子邮件列表的位置(yobject)、速度(d/dt(yobject))和加速度(d2/dt2(yobject))的修改,电子邮件列表的连续移动。质量块/弹簧模型516修改电子邮件列表的位置、速度和加速度,以便模拟电子邮件列表的移动,就像电子邮件列表是与弹簧耦合并受到阻尼力的质量块一样。质量块弹簧系统的平衡位置(其中电子邮件列表将静止,没有被施加任何外力)对应于电子邮件列表的最顶部位置,如图5b所示。在图5i中的边界517处,电子邮件列表的位置是位置图506中所示的位置,并且电子邮件列表经受向上(正)复原力,该向上(正)复原力与电子邮件列表从其平衡位置的位移相反并成比例(例如,位移为负,因为电子邮件列表在图5i中的位置低于其平衡位置),并经受阻尼力,使得电子邮件列表的位置返回到其平衡位置而不会振荡并且没有过冲。在该示例中,通过质量块/弹簧模型516施加在电子邮件列表上的复原力大于通过摩擦/反弹模型512施加在电子邮件列表上的摩擦力。因此,在图5j中,加速度图510示出,电子邮件列表的加速度从其在边界517处的值a6增加到a7。根据加速度的增加,如速度图508中所示,电子邮件列表的速度从在边界517处的负值v6增大到v7。然而,由于电子邮件列表在边界517处的速度为负(图5i),因此当接触514被抬离时,电子邮件列表具有向下的动量(图5i)。因此,在图5j中,位置图506示出,由于负速度,根据电子邮件列表的惯性,电子邮件列表的位置继续从y6略微减小至y7。

图5j-图5n示出,根据质量块/弹簧模型516中的复原力(弹簧)和阻尼力,电子邮件列表的位置、加速度和速度遵循阻尼正弦曲线(或其相应部分)。电子邮件列表的位置从y7变为y8、y9、y10,然后是y11。电子邮件列表的速度从v7变为v8、v9、v10,然后是v11。电子邮件列表的加速度从a7变为a8、a9、a10,然后是a11。在图5n中,电子邮件列表已在其处于最顶部位置的平衡位置处静止,如图5b所示(例如,y11=y1)。

应当注意,在图5b-图5n中,电子邮件列表的位置曲线可被认为表现出c2的参数连续性。当曲线、其相对于时间的一阶导数,以及其相对于时间的二阶导数均连续时,存在c2参数连续性。此处,该位置为连续曲线,并且位置相对于时间的一阶导数(例如,速度)和相对于时间的二阶导数(例如加速度)均为连续的。需注意,加速度相对于时间的导数(位置相对于时间的三阶导数)是不连续的,因为在边界517之前加速度随时间推移的改变(例如,图5b-图5i)为零,而在边界517之后加速度随时间推移的改变(例如,图5j)已跳至正值。

图5o-图5v示出了响应于所检测到的用户输入来提供无缝用户界面过渡的示例性用户界面。图5o示出了应用程序启动用户界面(例如,home屏幕)的用户界面520。用户界面520包括多个应用程序图标。用户界面520的x位置是一组预定义x位置(例如,预定义的分页位置)中的一个。任选地,用户界面520包括多个页面,每个页面具有一个或多个应用程序图标,并且每个页面具有从一组预定义x位置中选择的x位置。页面指示符523指示当前显示的用户界面520的页面是用户界面520的第一页面。图5o示出了触摸屏112上对应于用户界面520的位置处的接触518,以及接触518沿触摸屏112朝左侧的移动。当在触摸屏112上检测到接触518时,经由通过接触518的x位置(例如,水平位置)进行的直接操纵来修改用户界面520的x位置,x。在一些实施方案中,用户界面520的x位置xobject对应于接触518的x位置xinput。在图5o中,用户界面520的初始(水平)位置为x1。此外,用户界面520的初始速度(例如,用户界面520的x位置相对于时间的一阶导数)为v1,并且用户界面520的初始加速度(例如,用户界面520的x位置相对于时间的二阶导数)为a1。

图5p示出,在检测到接触518时(例如,在接触518抬离之前),并且响应于接触518的x位置从图5o所示的位置变为其在图5p中所示的位置,用户界面520的x位置相应地从x1改变到x2。从用户界面520的x位置改变计算用户界面520的更新的速度v2和更新的加速度a2。在设备100停止检测接触518之后(例如,在接触518抬离之后),设备100停止经由通过接触518进行的直接操纵来修改用户界面520的位置、速度和加速度,并且开始转而使用摩擦/反弹行为模型来修改用户界面520的位置、速度和加速度。用户界面520的最近确定的值x2、v2和a2被提供给摩擦/反弹行为模型,并且设备100开始使用摩擦/反弹行为模型,从其在图5p中所示的状态(例如,从用户界面520的值x2、v2和a2开始)修改用户界面520的位置、速度和加速度。

图5q示出,响应于检测到接触518的抬离,使用摩擦/反弹模型来确定用户界面520的x位置和速度的更新值。部分地基于中间位置xintermediate确定用户界面520的目标x位置xtarget,其中基于(例如,作为其函数)用户界面520的最近确定的x位置x2和最近确定的速度v2来确定该中间位置。进一步根据一组预定义x位置(例如,边界标准)来确定目标x位置xtarget。在图5q所示的示例中,用户界面520的目标x位置xtarget被确定为预定义x位置x1,如图5o所示(例如,由于用户界面520从图5o到图5p的x1位置位移未超过预定义的位移阈值(从图5o中的用户界面520的第一页面的预定义x位置x1开始),并且/或者因为基于x位置x2和速度v2确定的用户界面520的投影x位置不在针对用户界面520的不同页面的预定义x位置的预定义位移阈值之内)。基于(例如,作为其函数)目标x位置xtarget和最近确定的速度v2来确定用户界面520的更新x位置x3。基于(例如,作为其函数)最近确定的速度v2、最近确定的加速度a2和摩擦系数μ来确定用户界面520的更新的速度v3,摩擦系数表示在用户界面520移动时作用于用户界面上的模拟摩擦力。因此,用户界面520的x位置被更新为x3,用户界面520的速度被更新为v3,并且通过x位置x3和速度v3来计算用户界面520的加速度a3。图5q示出,用户界面520的更新位置x3与其如图5o所示的位置相同(例如,x3=x1)。因此,页面指示符523指示当前显示的用户界面520的页面仍然是第一页面。

图5r示出了用户界面520,以及在触摸屏112上对应于用户界面520的位置处的用户输入522。用户输入522包括触摸屏112上的接触、接触在触敏表面上从右到左的移动,以及接触以非零速度(例如,从右到左的轻弹手势)的抬离。在检测到用户输入522时(例如,在用户输入522的接触抬离之前),并且响应于用户输入522的x位置的改变,经由通过用户输入522的x位置进行的直接操纵而修改用户界面520的x位置。因此,在一些实施方案中,xobject=xinput=x4。此外,通过用户界面520的x位置的改变来计算用户界面520的速度v4和加速度a4。在设备100停止检测用户输入522之后(例如,在用户输入522的接触抬离之后),设备100停止经由通过用户输入522进行的直接操纵来修改用户界面520的位置、速度和加速度,并且开始转而使用摩擦/反弹行为模型来修改用户界面520的位置、速度和加速度。用户界面520的最近确定的值x4、v4和a4被提供给摩擦/反弹行为模型,该模型开始从其在图5r中所示的状态(例如,从用户界面520的值x4、v4和a4开始)修改用户界面520的位置、速度和加速度。页面指示符523指示图5r中一开始显示的用户界面520的页面是用户界面520的第一页面。

图5s示出,响应于检测到用户输入522的抬离,使用摩擦/反弹模型来确定用户界面520的x位置和速度的更新值。如上文参考图5q所述,根据摩擦/反弹模型,部分地基于中间位置xintermediate确定用户界面520的目标x位置xtarget,其中基于(例如,作为其函数)用户界面520的最近确定的x位置x4和最近确定的速度v4来确定该中间位置。进一步根据边界标准(例如,该组预定义x位置)确定目标x位置xtarget。在图5s所示的示例中,用户界面520的目标x位置被确定为用户界面520的不同后续页面,诸如用户界面520的第二页面的位置(例如,因为基于x位置x4和速度v4确定的用户界面520的投影x位置在针对用户界面520的不同页面的预定义x位置的预定义位移阈值内,或投影x位置不在图5r所示的初始预定义x位置的预定义位移阈值之内)。基于目标x位置xtarget和最近确定的速度v4来确定用户界面520的更新x位置x5。基于最近确定的速度v4、最近确定的加速度a4和摩擦系数μ来确定用户界面520的更新的速度v5,摩擦系数表示在用户界面520移动时作用于用户界面上的模拟摩擦力。因此,用户界面520的x位置被更新为x5,用户界面520的速度被更新为v5,并且基于x位置x5和速度v5来计算用户界面520的加速度a5。图5s示出,用户界面520的更新位置x5不同于位置x4,如图5r所示。

图5t示出了用户界面520从其在图5s中所示的位置开始的连续移动。因为用户界面520在图5s中以非零速度v5移动,所以用户界面520具有朝向左侧的动量。因此,在图5t中,用户界面520继续朝左侧移动。基于最近确定的用户界面520的x位置x5和最近确定的速度v5来确定更新的中间位置xintermediate。基于中间位置xintermediate和边界标准(例如,该组预定义x位置)来确定更新的目标位置xtarget。基于目标x位置xtarget和最近确定的速度v5来确定用户界面520的更新x位置x6。基于最近确定的速度v5、最近确定的加速度a5和摩擦系数μ来确定用户界面520的更新的速度v6,摩擦系数表示在用户界面520移动时作用于用户界面上的模拟摩擦力。因此,用户界面520的x位置被更新为x6,用户界面520的速度被更新为v6,并且基于x位置x6和速度v6来计算用户界面520的加速度a6。由于在与用户界面520的移动方向相反的方向上的用户界面520上的模拟摩擦力的影响,更新的速度v6小于先前速度v5。图5t示出,用户界面520的更新位置x6对应于与其如图5r所示位置不同的预定义x位置(例如,用户界面520的第二页面的预定义x位置)。

图5u示出了用户界面520从其在图5t中所示的位置开始的连续移动。因为用户界面520在图5t中以非零速度v6移动,所以用户界面520仍具有朝向左侧的动量。因此,在图5u中,用户界面520继续朝左移动,经过用户界面520的第二页面的预定义x位置。基于最近确定的用户界面520的x位置x6和最近确定的速度v6来确定更新的中间位置xintermediate。基于中间位置xintermediate和边界标准(例如,该组预定义x位置)来确定更新的目标位置xtarget。基于目标x位置xtarget和最近确定的速度v6来确定用户界面520的更新x位置x7。基于最近确定的速度v6、最近确定的加速度a6和摩擦系数μ来确定用户界面520的更新的速度v7。因此,用户界面520的x位置被更新为x7,用户界面520的速度被更新为v7,并且基于x位置x7和速度v7来计算用户界面520的加速度a7。由于在与用户界面520的移动方向相反的方向上的用户界面520上的模拟摩擦力的影响,更新的速度v7小于先前速度v6。

图5v示出了用户界面520从其在图5u中所示的位置开始的连续移动。在图5u中,由于用户界面520朝左的动量,用户界面520移动经过用户界面520的第二页面的预定义x位置。基于最近确定的用户界面520的x位置x7和最近确定的速度v7来确定更新的中间位置xintermediate。基于中间位置xintermediate和边界标准(例如,该组预定义x位置)来确定更新的目标位置xtarget。在图5v所示的示例中,用户界面520的目标x位置xtarget被确定为用户界面520的第二页面的预定义x位置。在一些实施方案中,xtarget被确定为第二页面的预定义x位置,因为用户界面520的x位置位移不超过(距第二页面的预定义x位置的)预定义位移阈值,其中用户界面520的x位置位移被计算为如图5u所示的其x位置x7和第二页面的预定义x位置之间的差值。在一些实施方案中,xtarget被确定为第二页面的预定义x位置,因为用户界面520的投影位移不会超过距第二页面的预定义x位置的预定义位移阈值,其中用户界面的投影位移被计算为其投影x位置(使用摩擦/反弹模型和图5u中的位置x7、速度v7和加速度a7确定)和第二页面的预定义x位置之间的差值。基于目标x位置xtarget和最近确定的速度v7来确定用户界面520的更新x位置x8。基于最近确定的速度v7、最近确定的加速度a7和摩擦系数μ来确定用户界面520的更新的速度v8。因此,用户界面520的x位置被更新为x8,用户界面520的速度被更新为v8,并且基于x位置x8和速度v8来计算用户界面520的加速度a8。根据更新的值,用户界面520在与图5u中的用户界面520的移动方向相反的方向上移动(例如,在移动经过目标x位置之后,用户界面520改变方向并返回至目标x位置)。图5v示出,用户界面520的更新位置x8是用户界面520的第二页面的预定义x位置。因此,页面指示符523变为指示当前显示的用户界面520的页面是第二页面。

图5w-图5y示出了根据一些实施方案的示例性物理模型。

图5w示出了包括质量块524(例如,具有非零重量的物体)、弹簧526以及任选的阻尼器528的物理模型。在图5w中,弹簧526和阻尼器528平行连接到质量块524。然而,在一些实施方案中,使用串联连接到质量块524的弹簧526和阻尼器528。

在一些实施方案中,物理模型用于确定质量块524在特定时刻(或一系列时间点上)的输出属性,诸如位置。在一些情况下,相对于参考位置(例如,质量块524或参考对象,诸如(模拟)地面的初始位置)测量(或确定)质量块524的位置。质量块524与参考位置的距离在本文中称为(质量块524的)位移。

在一些实施方案中,触摸输入的强度被提供给物理模型作为输入。例如,使用触摸输入的强度来确定施加到物理模型中的质量块524的模拟力(f),并且模拟质量块524的移动(或位移)。弹簧526向质量块524提供模拟力,该模拟力允许质量块524返回至参考位置(或中性位置,其中当质量块524静止时,由弹簧526施加在质量块524上的模拟力为零)。阻尼器528提供阻力,使得质量块524的移动随时间推移而减慢。

另选地,在一些实施方案中,触摸输入的强度被提供给物理模型作为质量块524的条件移动。例如,触摸输入的强度被处理为如同质量块524在物理模型中沿单个方向的强制移动(因此,触摸输入的强度减小不会在相反方向上牵拉质量块524)。

由于质量块524的惯性、弹簧526的弹性和阻尼器528提供的阻力,质量块524的位移不随用户输入强度的改变而线性改变,如图530所示。

在一些实施方案中,物理模型或物理模型的实例(任选地具有一个或多个不同参数,诸如弹簧常数k或阻尼系数c)被用于确定附加输出属性(例如,视觉显示参数,诸如模糊半径、缩放系数、颜色变化值等),该附加输出属性用于更新用户界面和/或提供从一个用户界面到另一个用户界面的动画过渡。在一些实施方案中,用户界面中的更新与一个或多个输出属性的改变成比例。在一些实施方案中,基于应用于一个或多个输出属性的变换(例如,范围极限或内插函数)来确定用户界面中的更新。

例如,当检测到用户输入的改变时(例如,如图5c-图5d和图5h-图5i中所示),将输出属性用于更新用户界面。在一些情况下,响应于用户输入的改变而线性地更新用户界面在用户输入显著改变时(例如,当后续用户输入的下触将导致用户界面元素的移动方向突然反转时,诸如图5h-图5i中所示)给用户界面带来突然而剧烈的变化。用户界面的这种剧烈变化可能会分散用户的注意力。通过行为模型(例如物理模型)过滤用户输入的改变可减少用户界面的剧烈变化,但在更新用户界面时引入滞后。因此,在用户输入发生改变之后,用户界面被以用户可观察到的延迟进行更新,这降低了用户体验(因为用户界面在用户预期其改变时没有改变)。通过利用输出属性(例如,质量块和弹簧系统中的质量块的位置),逐渐更新用户界面(例如,用户界面没有突然而剧烈的变化),同时用户界面保持对用户输入的任何变化的响应(例如,减少或消除用户输入的改变和对用户界面的更新之间的延迟),同时表现出物理上直观的行为,诸如惯性、阻尼、摩擦和振荡。

如上所述,图5w示出了一维质量块和弹簧系统。在一些其他实施方案中,使用更高维度的质量块和弹簧系统。例如,图5x示出了二维质量块和弹簧系统(例如,包括第二弹簧546和任选的第二阻尼器544)。此类系统可用于修改两个或更多个输出属性(例如,一个输出属性对应于视觉显示参数,第二输出属性对应于用户界面对象在整个显示器上的移动,或者一个输出属性是用户界面对象的x位置,第二输出属性是用户界面对象的y位置)。另选地,使用两个独立的一维质量块和弹簧系统来修改两个输出属性。尽管以上示例是参考一弹簧系统和两弹簧系统给出的,但也设想了质量块和弹簧的其他布置。例如,弹簧被布置在质量块的相对侧上的三弹簧或四弹簧系统(例如,图5y所示的四弹簧系统)可提供有利的阻尼和稳定特征部,该阻尼和稳定特征部产生在窄范围的可预测值内做出响应的更直观的物理系统。原则上,可使用任何数量的弹簧和质量块,然而物理模型中包括的附加弹簧和/或质量块增加了计算成本(例如,用于计算系统更新的时间和能量),并且可能降低依赖于物理模型的用户界面的响应性。因此,使用用于更新用户界面的行为模型需要在具有大量弹簧的稳定系统和具有较少弹簧的高效率系统之间进行平衡。

图5z-图5ab是示出根据一些实施方案,使用行为模型修改用户界面的输出属性的框图。在检测到用户输入时(在用户输入的下触期间),用于修改输出属性的行为模型由描述用户输入的输入参数驱动。在设备100停止检测用户输入之后(在用户输入的触起,也称为抬离之后),设备100基于先前确定的输出属性的信息(例如,如上文参考图5a-图5v所述)使用行为模型修改输出属性。

图5z示出了用户界面元素的x位置和y位置的修改(例如,滚动用户界面中的对象列表,如上文参考图5a-图5n所述,或平移用户界面,诸如web浏览器中的网页)。在图5z中,响应于在对应于用户界面元素的位置处的接触,在接触的下触期间,经由通过接触的x位置550进行的直接操纵(例如,使用直接操纵行为模型548)来修改用户界面元素的x位置552,并通过由接触的y位置551的直接操纵(例如,使用直接操纵行为模型549)修改用户界面元素的y位置553。

在接触触起之后,不再经由通过接触进行的直接操纵修改用户界面元素的x位置552和y位置553(例如,因为接触已被移除)。相反,基于摩擦/反弹模型554(例如,摩擦/反弹模型的第一实例)修改用户界面元素的x位置552,并且基于摩擦/反弹模型555(例如,摩擦/反弹模型的第二实例,任选地具有一个或多个不同参数,诸如摩擦系数)来修改用户界面元素的y位置553。例如,在本文中例如参考图5d-图5h和图5ac以及方法600和800更详细地描述摩擦/反弹模型的操作。

图5aa示出了用户界面元素的x位置、y位置和标度的修改(例如,移动用户界面卡,如下文参考图5ad-图5az所述)。在图5aa中,响应于在对应于用户界面元素的位置处的接触,在接触的下触期间,使用由接触的x位置556驱动的质量块/弹簧模型558a来修改用户界面元素的x位置561。使用由接触的y位置557驱动的质量块/弹簧模型559a来修改用户界面元素的y位置562。使用也由接触的y位置557驱动的质量块/弹簧模型560a来修改用户界面元素的标度563。如图5aa所示,相应的输入参数(例如,y位置557)可驱动多个行为模型(例如,质量块/弹簧模型559a和质量块/弹簧模型560a)。在一些实施方案中,质量块/弹簧模型558a、559a和560a共享一个或多个参数(例如,弹簧常数和/或阻尼系数)。在一些实施方案中,质量块/弹簧模型558a、559a和560a具有一个或多个不同参数(例如,不同的弹簧常数和/或不同的阻尼系数)。在一些实施方案中,质量块/弹簧模型558a、559a和560a中的一者或多者为相同质量块/弹簧行为模型的实例。在一些实施方案中,给定质量块/弹簧行为模型的不同实例具有不同参数(例如,不同的弹簧常数和/或不同的阻尼系数)。

在接触触起之后,修改用户界面元素的x位置561、y位置562和标度563的行为模型不再由接触的x位置和y位置驱动(例如,因为接触已被移除)。相反,分别基于质量块/弹簧模型558b、559b和560b修改用户界面元素的x位置561、y位置562和标度563。在一些实施方案中,在接触触起之后,分别基于质量块/弹簧模型558a、559a和560a继续修改x位置561、y位置562和标度563。例如,在一些实施方案中,质量块/弹簧模型558b是与质量块/弹簧模型558a相同的模型(例如,x位置561在接触触起之后继续由质量块/弹簧模型558a驱动,尽管质量块/弹簧模型558a不再由接触的输入参数驱动)。在一些实施方案中,质量块/弹簧模型558b、559b和560b中的一者或多者分别具有与对应的质量块/弹簧模型558a、559a和560a不同的一个或多个参数(例如,不同的弹簧常数和/或不同的阻尼系数)。例如,在一些实施方案中,质量块/弹簧模型558b不同于质量块/弹簧模型558a(例如,质量块/弹簧模型558b针对建模行为使用不同于质量块/弹簧模型558a的弹簧常数)。在一些实施方案中,质量块/弹簧模型558b、559b和560b中的一者或多者为相同质量块/弹簧行为模型的实例,任选地具有一个或多个不同参数(例如,不同的弹簧常数和/或不同的阻尼系数)。例如,在本文中参考图5i-图5n和图5ab-图5ac以及方法600和800更详细地描述质量块/弹簧模型的操作。

图5ab示出了用户界面元素的标度、模糊(例如模糊度或模糊半径)和y位置的修改(例如,响应于用户输入来移动滚动列表中的用户界面元素,其中该元素响应于用户输入的强度的改变,诸如在电子邮件列表中滚动电子邮件,其中用户输入被引导至电子邮件,并且电子邮件的外观响应于输入强度和位移的改变而变化)。在图5ab中,响应于在对应于用户界面元素的位置处的接触,在接触的下触期间,使用由接触的强度564和接触的y位置565两者驱动的质量块/弹簧模型566a来修改用户界面元素的标度568。使用也由接触的强度564和接触的y位置565两者驱动的质量块/弹簧模型567a修改用户界面元素的模糊569。经由通过接触的y位置565进行的直接操纵(例如,使用直接操纵行为模型573)来修改用户界面元素的y位置570。如图5ab所示,相应的输入参数(例如,强度564和y位置565)可驱动多个行为模型(例如,强度564驱动质量块/弹簧模型566a和质量块/弹簧模型567a两者;并且y位置565驱动所有三个模型:质量块/弹簧模型566a、质量块/弹簧模型567a和直接操纵行为模型573)。在一些实施方案中,相应的行为模型(例如,质量块/弹簧模型566a和质量块/弹簧模型567a)由多个输入参数驱动(例如,质量块/弹簧模型566a由接触的强度564和y位置565两者驱动,并且质量块/弹簧模型567a由接触的强度564和y位置565两者驱动)。如上文参考质量块/弹簧模型558、559和560所述,质量块/弹簧模型可共享一个或多个参数(例如,弹簧常数和/或阻尼系数)和/或可具有一个或多个不同参数(例如,不同的弹簧常数和/或不同的阻尼系数)。在一些实施方案中,一个或多个质量块/弹簧模型是同一质量块/弹簧行为模型的实例,任选地具有不同参数。

在接触触起之后,修改用户界面元素的标度568、模糊569和y位置570的行为模型不再由接触的强度和y位置驱动(例如,因为接触已被移除)。相反,分别基于质量块/弹簧模型566b和567b修改标度568和模糊569。如上文参考质量块/弹簧模型558、559和560所述,质量块/弹簧模型566b和567b可分别与质量块/弹簧模型566a和567b相同或不同。此外,用于修改y位置570的行为模型从直接操纵行为模型573变为摩擦/反弹模型571。

图5ac示出了根据基于用户界面元素的一个或多个输出属性的标准来确定要在用户界面中执行的操作的方法580的概念性流程图表示。在一些实施方案中,方法580由电子设备(例如,便携式多功能设备100,图1a)的应用程序独立模块(例如,行为模型模块181,图1c,或应用程序独立软件模块220-1,图1d)执行。

在一些实施方案中,该方法开始于设备显示包括应用程序用户界面的用户界面(例如,邮件应用程序用户界面500,图5ad)。

设备(例如,应用程序独立软件模块220-1,图1d)监视用户界面的一个或多个输出属性和/或相应输出属性相对于时间的一个或多个导数(574)。在一些实施方案中,设备监视输出属性,同时检测涉及用户界面的用户输入。在一些实施方案中,设备通过由用户输入驱动的一个或多个行为模型来监视输出属性的修改。

接着,设备确定用户界面中是否满足移动阈值(例如,用户界面的相应输出属性的改变是否满足移动阈值)(576)。在一些实施方案中,设备响应于检测到用户输入的抬离来确定是否满足移动阈值(例如,不涉及在检测到用户输入时的输出属性的值,如本文参考图5aq-图5at所述)。在一些实施方案中,基于用户界面元素的输出属性的当前值(例如,x位置和/或y位置)来确定是否满足移动阈值。在一些实施方案中,基于输出属性在后续时间点的投影值(例如,投影x位置和/或投影y位置)来确定是否满足移动阈值。在一些实施方案中,对于以相对于时间的非零一阶导数(例如,以非零速度移动)和/或相对于时间的非零二阶导数(例如,以非零加速度移动)改变的输出属性,基于在当前时间点相对于时间的一阶导数的初始值和相对于时间的二阶导数的初始值,确定输出属性在将来时间点的投影值,任选地以行为模型的一个或多个参数为准(例如,摩擦/反弹模型中的摩擦力,或质量块/弹簧模型中的复原(弹簧)力和/或阻尼力)。例如,在用户界面内的移动基于摩擦/反弹模型的用户界面元素的投影位置为用户界面元素将在由用户界面施加到用户界面元素上的摩擦力作用下停靠的位置(例如,如本文参考图5ak-图5am所述)。在另一个示例中,在用户界面内的移动基于质量块/弹簧模型的用户界面元素的投影位置为用户界面元素将在由弹簧施加到用户界面元素上的复原力和施加到用户界面元素上的阻尼力作用下停靠的位置。

根据确定不满足移动阈值(576-否),设备重新显示应用程序用户界面(例如,如本文参考图5an-图5at和图5av所述)。

根据确定满足移动阈值(576-是),设备确定用户界面元素的移动方向(577)。

根据确定移动方向是从左到右(例如,朝向显示器的右边缘),设备显示先前所显示的应用程序(例如,在显示当前应用程序之前最近显示的应用程序)的用户界面(例如,如本文参考图5au-图5ax所述)。在一些实施方案中,如果用户界面元素的移动方向是从左到右,并且如果用户界面元素的移动满足x位置移动阈值(例如,如上文参考步骤576所述),则显示最近的先前应用程序用户界面。

根据确定移动方向是从右到左(例如,朝向显示器的左边缘),设备显示控制中心用户界面(例如,如本文参考图5ay-图5ba所述)。在一些实施方案中,如果用户界面元素的移动方向是从右到左,并且如果用户界面元素的移动满足x位置移动阈值(例如,如上文参考步骤576所述),则显示控制中心用户界面。

根据确定移动方向是向上(例如,远离显示器的底部边缘并且朝向显示器的顶部边缘),设备确定是否满足多任务标准(例如,用于显示多任务用户界面的标准)(578)。在一些实施方案中,多任务标准包括当用户界面元素的输出属性(例如,y位置或标度)在预定义值范围之内时满足的标准。例如,预定义值范围包括高于第一阈值且低于第二阈值的输出属性的值,并且当用户界面元素的输出属性高于第一阈值并且低于第二阈值时,满足多任务条件的标准。

根据确定满足多任务标准(例如,用户界面元素的y位置在满足多任务标准的预定义y位置范围之内,或者用户界面元素的标度在满足多任务标准的预定义标度范围之内),设备显示多任务用户界面(584)(例如,如本文参考图5ad-图5af所述)。

根据确定不满足多任务标准(例如,用户界面元素的y位置或投影y位置超出(例如,高于)满足多任务标准的预定义y位置范围,或者用户界面元素的标度或投影标度超出(例如,低于)满足多任务标准的预定义标度范围),设备显示应用程序启动用户界面(例如,home屏幕用户界面)(586)(例如,如本文参考图5ag-图5am所述)。

图5ad-图5ba示出了根据基于用户界面元素的一个或多个输出属性的标准来确定要在用户界面中执行的操作的示例性用户界面。

图5ad-图5af示出了从应用程序用户界面到多任务用户界面的过渡的示例。具体地讲,图5ad-图5af示出了根据应用程序用户界面的标度的改变从应用程序用户界面到多任务用户界面的过渡。图5ad示出了(例如,图1a,电子邮件客户端模块140的)邮件应用程序用户界面500。标度计588指示邮件应用程序用户界面500的当前标度。标度计588还包括标度值阈值s1和s2,其定义对应于多任务用户界面的标度值范围(例如,高于s2的标度值对应于home屏幕用户界面,低于s1的标度值对应于所显示的应用程序用户界面)。如图5ad所示,邮件应用程序用户界面500以全标度显示。图5ad示出了在触摸屏112的底部边缘处检测到的接触589以及接触589的向上移动。

图5ae示出,根据接触589从其如图5ad所示的位置向上移动,邮件应用程序用户界面500减小标度并且被显示为在用户界面内向上移动的用户界面卡。附加用户界面卡591和592的部分分别显示在邮件卡500的左侧和右侧。标度计588指示,图5ae中的邮件卡500的当前标度低于对应于与多任务用户界面对应的标度值范围的上限的标度值阈值s2,并且高于对应于下限的标度值阈值s1。此外,在背景中显示home屏幕用户界面597,其具有高模糊度(例如,大模糊半径)和减小的标度。

图5af示出了响应于检测到接触589从其如图5ae所示的位置抬离,具有多个用户界面卡的多任务用户界面,该多个用户界面卡包括邮件卡500、浏览器卡591、控制中心卡592和消息传递卡593。邮件卡500以初始标度smt(例如,在多个用户界面卡中进行导航之前)并且在过渡到多任务用户界面时的初始位置显示,并且home屏幕用户界面597停止在背景中显示。在一些实施方案中,向多任务用户界面的过渡是根据确定邮件卡500的标度已改变(例如,减小)至少阈值量(例如,邮件卡500满足上文参考图5ac的方法580的步骤576所述的移动阈值)。在一些实施方案中,向多任务界面的过渡是根据确定接触589的移动沿向上方向。在一些实施方案中,向多任务界面的过渡是根据确定在接触589抬离时,邮件卡500的标度在s1和s2之间。在一些实施方案中,向多任务界面的过渡是根据前述标准中的两个或更多个的组合。

图5ag-图5aj示出了从应用程序用户界面到home屏幕用户界面的示例过渡。具体地讲,图5ag-图5aj示出了根据应用程序用户界面的标度的改变从应用程序用户界面到home屏幕用户界面的过渡。图5ag示出了按标度计588所指示的全标度显示的邮件应用程序用户界面500。此外,图5ag示出了在触摸屏112的底部边缘处检测到的接触590以及接触590的向上移动。

图5ah示出,根据接触590从其如图5ag所示的位置向上移动,邮件应用程序用户界面500减小标度并且被显示为在用户界面内移动的用户界面卡。附加用户界面卡591和592的部分分别显示在邮件卡500的左侧和右侧。标度计588指示,图5ah中的邮件卡的当前标度低于对应于与多任务用户界面对应的标度值范围的上限的标度值阈值s2,并且高于对应于下限的标度值阈值s1。此外,在背景中显示home屏幕用户界面597,其具有高模糊度(例如,大模糊半径)和减小的标度。

图5ai示出,根据接触590从其如图5ah所示的位置继续向上移动,邮件卡500进一步减小标度至低于标度值阈值s1的标度。因此,附加用户界面卡591和592停止被显示。此外,减小了背景中所显示的home屏幕用户界面597的模糊度(例如,模糊半径),并且增大了home屏幕用户界面597的标度。

图5aj示出了响应于检测到接触590从其如图5ai所示的位置抬离而显示home屏幕用户界面597。邮件卡500停止被显示(例如,邮件卡500的标度降低到零)。home屏幕用户界面597被以全标度显示,并且没有模糊(例如,零模糊半径)。在一些实施方案中,向home屏幕用户界面597的过渡是根据确定邮件卡500的标度已改变至少阈值量(例如,邮件卡500满足上文参考图5ac的方法580的步骤576所述的移动阈值)。在一些实施方案中,向home屏幕界面597的过渡是根据确定接触590的移动沿向上方向。在一些实施方案中,向home屏幕用户界面597的过渡是根据确定在接触590抬离时,邮件卡500的标度低于标度值阈值s1(例如,不满足要求邮件卡500的标度在s1和s2之间的多任务标准)。在一些实施方案中,向home屏幕用户界面597的过渡是根据前述标准中的两个或更多个的组合。

图5ak-图5am示出了从应用程序用户界面到home屏幕用户界面的另一示例过渡。具体地讲,图5ak-图5am示出了根据应用程序用户界面的速度和/或投影位置从应用程序用户界面到home屏幕用户界面的过渡。图5ak示出了在y位置计596所指示的y位置零处显示的邮件应用程序用户界面500。此外,图5ag示出了包括在触摸屏112的底部边缘处检测到的接触和接触的向上移动(例如,轻弹手势)的用户输入594。根据接触594的向上移动,邮件应用程序用户界面500开始以高于速度计595所示的速度阈值vth的初始速度向上移动(例如,经由由接触594驱动的直接操纵行为模型)。邮件应用程序用户界面500的(例如,如本文参考图5ac的步骤576所述,基于摩擦/反弹行为模型所确定的)投影y位置yprojected高于由y位置计596所指示的y位置阈值y2。

图5al示出,在停止检测用户输入594之后并且响应于检测到用户输入594,邮件应用程序用户界面500减小标度并且被显示为在用户界面内以低于由速度计595所指示的速度阈值vth的速度移动的用户界面卡。在一些实施方案中,邮件卡500的速度随时间推移从其如图5ak所示的初始速度根据摩擦/反弹行为模型下降,该模型根据模拟摩擦力(例如,如本文参考图5d-图5h所述)修改邮件卡500的位置。在邮件卡500的背景中显示home屏幕用户界面597,其具有低模糊度(例如,小模糊半径)和稍微减小的标度。在一些实施方案中,当邮件卡500沿显示器向上移动时,home屏幕用户界面597的模糊度从最大模糊度降低至零模糊度。此外,在一些实施方案中,当邮件卡500沿显示器向上移动时,home屏幕用户界面597的标度从最小标度增大到全标度。

图5am示出了在不模糊的情况下(例如,不再显示邮件卡500)以全标度显示的home屏幕用户界面597。在一些实施方案中,例如,在停止检测用户输入594时,邮件应用程序用户界面500(图5ak)根据确定邮件应用程序用户界面的初始速度满足(例如,高于)速度阈值(例如,速度阈值vth,图5ak)而过渡到home屏幕用户界面597。另选地或除此之外,在一些实施方案中,邮件应用程序用户界面500(图5ak)根据确定邮件应用程序用户界面500的投影y位置(例如,yprojected,图5ak)满足(例如,高于)y位置阈值(例如,y位置阈值y2,图5ak)而过渡到home屏幕用户界面597。例如,图5ak中的邮件应用程序用户界面500的当前y位置与投影y位置之间的差值满足移动阈值(例如,步骤576,图5ac),并且邮件应用程序用户界面500的投影y位置不满足多任务标准(例如,步骤578,图5ac)(例如,投影y位置不在由y1和y2限定的值范围之内,图5ak)。

图5an-图5at示出了根据未能满足移动阈值(例如,步骤576,图5ac)而重新显示应用程序用户界面。具体地讲,图5an-图5ap示出了响应于用户输入的移动不足而根据应用程序用户界面的y位置未能满足y位置阈值,重新显示应用程序。图5aq-图5at示出了在用户输入抬离时,根据应用程序用户界面的最终y位置未能满足y位置阈值而重新显示应用程序,即使在检测到用户输入期间应用程序用户界面的y位置满足y位置阈值。

图5an示出了在y位置计596所指示的y位置零处显示的邮件应用程序用户界面500。此外,图5an示出了在触摸屏112的底部边缘处检测到的接触598以及接触598的向上移动。

图5ao示出,根据接触598从其如图5an所示的位置向上移动,邮件应用程序用户界面500被显示为用户界面卡,其具有从图5an中的邮件应用程序用户界面500的标度减小的标度。此外,邮件卡500的y位置增大到高于零并且低于y位置阈值y1(例如,对应于多任务用户界面的位置值范围的下限)的值。在背景中显示home屏幕用户界面597,其具有高模糊度(例如,大模糊半径)和减小的标度。

图5ap示出,响应于检测到接触598从其如图5ao所示的位置抬离,重新显示邮件应用程序用户界面500(例如,如图5an中所示)。在一些实施方案中,根据确定在接触598抬离时邮件卡500的y位置的改变不满足移动阈值,重新显示邮件应用程序用户界面500。在一些实施方案中,根据确定在接触598抬离时邮件卡500的y位置不满足多任务标准(例如,在介于y1和y2之间的值范围之外),重新显示邮件应用程序用户界面500。

图5aq示出了在y位置计596所指示的y位置零处显示的邮件应用程序用户界面500。此外,图5aq示出了在触摸屏112的底部边缘处检测到的接触599以及接触599的向上移动。

图5ar示出,根据接触599从其如图5aq所示的位置向上移动,邮件应用程序用户界面500被显示为用户界面卡,其具有从图5aq中的邮件应用程序用户界面500的标度减小的标度。此外,邮件卡500的y位置增大到高于y位置阈值y2的值(例如,高于对应于多任务用户界面的位置值范围的上限,在对应于home屏幕界面的值处,如上文参考图5ak所述)。在背景中显示home屏幕用户界面597,其具有低模糊度(例如,小模糊半径)和减小的标度。图5ar还示出了接触599向下和向右的持续移动。

图5as示出,根据接触599从其如图5ar所示位置向下和向右移动,邮件卡500的标度增大,并且邮件卡500的y位置减小至低于y位置阈值y1(例如,对应于多任务用户界面的位置值范围的下限)的值。在背景中显示home屏幕用户界面597,其具有高模糊度(例如,大模糊半径)和减小的标度。

图5at示出,响应于检测到接触599从其如图5as所示的位置抬离,重新显示邮件应用程序用户界面500(例如,如图5aq中所示)。在一些实施方案中,基于邮件卡500在抬离时的y位置来重新显示邮件应用程序用户界面500,而与邮件卡500在检测到接触599时的y位置的先前值无关。在一些实施方案中,根据确定在接触599抬离时邮件卡500的y位置的改变不满足移动阈值,重新显示邮件应用程序用户界面500。在一些实施方案中,根据确定在接触599抬离时邮件卡500的y位置不满足多任务标准(例如,在介于y1和y2之间的值范围之外),重新显示邮件应用程序用户界面500。

图5au-图5ax示出了从应用程序用户界面到先前显示的应用程序用户界面(例如,在显示当前应用程序之前最近显示的应用程序)的示例性过渡。图5au示出了邮件应用程序用户界面500。此外,图5au示出了在触摸屏112的底部边缘处检测到的接触540以及接触540的向上移动和向右移动。

图5av示出,根据接触540从其如图5au所示的位置向上移动和向右移动,邮件应用程序用户界面540被显示为用户界面卡,其具有从图5au中的邮件应用程序用户界面500的标度减小的标度。此外,邮件卡500向上并向右移动。邮件卡500的左边缘在x位置阈值xth的左边。在一些实施方案中,根据检测到接触540从其在图5au中所示的位置抬离,邮件应用程序用户界面500将被重新显示,因为邮件卡500将不满足移动阈值(例如,邮件卡500的左边缘将不会超过x位置阈值xth)。

图5aw示出,根据接触540向其如图5av所示的位置右方持续移动,邮件卡500继续向右移动。邮件卡500的左边缘在x位置阈值xth的右边。

图5ax示出,响应于检测到接触540从其如图5aw所示的位置抬离,显示浏览器应用程序用户界面591。在一些实施方案中,根据确定邮件卡500满足移动阈值(例如,邮件卡500的边缘,诸如左边缘超过x位置阈值xth)(例如,步骤576,图5ac)并根据确定移动方向为从左到右(例如,步骤577,图5ac),显示浏览器应用程序用户界面591。

图5ay-图5ba示出了从应用程序用户界面到控制中心用户界面的示例性过渡,该控制中心用户界面具有用于控制设备的各种功能的多个用户界面元素。图5ay示出了邮件应用程序用户界面500。此外,图5ay示出了在触摸屏112的底部边缘处检测到的接触542以及接触542的向上移动和向左移动。

图5az示出,根据接触542从其如图5ay所示的位置向上移动和向左移动,邮件应用程序用户界面500被显示为用户界面卡,其具有从图5ay中的邮件应用程序用户界面500的标度减小的标度。此外,邮件卡500向上并向左移动。邮件卡500的右边缘在x位置阈值xth的左边。

图5ba示出,响应于检测到接触542从其如图5az所示的位置抬离,显示控制中心用户界面592。在一些实施方案中,根据确定邮件卡500满足移动阈值(例如,邮件卡500的边缘,诸如右边缘超过x位置阈值xth)(例如,步骤576,图5ac)并根据确定移动方向为从右到左(例如,步骤577,图5ac),显示控制中心用户界面592。

图6a-图6f是流程图,示出了根据一些实施方案的用于无缝过渡用户界面行为的方法600。方法600是在具有显示器、触敏表面和用于检测与触敏表面的接触的强度的一个或多个传感器的电子设备(例如,图3中的设备300或图1a中的便携式多功能设备100)处执行的。在一些实施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与显示器集成。在一些实施方案中,显示器与触敏表面是分开的。方法600中的一些操作任选地被组合,并且/或者一些操作的顺序任选地被改变。

如下所述,方法600提供了一种直观的方式来无缝地改变用户界面中不同类型行为之间的用户界面过渡。通过在不同行为模型之间传输值和导数,使用表示用户界面属性的值和值相对于时间的一个或多个导数来改变用户界面,提供了无缝的用户界面行为和过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

该设备经由输出关于用户界面的信息的一个或多个输出设备呈现(602)用户界面(例如,邮件应用程序用户界面500,图5a)。用户界面包括表示对应于用户界面的第一类型的输出的输出属性(例如,y位置yobject,图5b)。

在一些实施方案中,由输出属性表示的输出类型包括(604)以下一种或多种:视觉输出属性(例如,尺寸、x位置、y位置、颜色、不透明度、模糊半径、饱和度、z高度)、音频输出属性(例如,音量、频率、音调、平衡)和触觉输出属性(例如,频率、振幅、持续时间或位置)。改变对应于用户界面的多种类型的输出为用户提供了物理上更直观和更完整的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

接着,设备经由一个或多个输入设备检测用户输入,该用户输入包括与经由第一行为模型修改第一类型的输出相关联的第一输入(例如,第一行为模型由第一输入,诸如第一输入的一个或多个输入参数来驱动)(606)。例如,用户输入502经由直接操纵行为模型修改y位置yobject(图5b)。

在一些实施方案中,行为模型是一组规则,该一组规则指定一个或多个输出属性如何随时间推移从输出属性的当前值演变(608)。在一些实施方案中,规则指定目标值或如何选择目标值。在一些实施方案中,规则指定检测到的输入如何影响输出属性的目标值和/或输出值。在一些实施方案中,规则是模拟物理模型的规则。在一些实施方案中,规则指定一个或多个输出属性以及输出属性相对于时间的一个或多个导数如何随时间推移从这些值的对应值或相对于时间的导数而演变。使用指定用户界面的输出属性如何随时间推移而演变的规则来改变用户界面,在用户界面过渡期间提供了一致性和连续性,并且向用户提供了关于用户界面改变的视觉反馈。向用户提供改进的视觉反馈增强了用户体验和设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,检测用户输入包括检测对描述用户输入的两个或更多个输入参数(例如,用户输入的y位置和强度)的改变,并且第一行为模型由两个或更多个输入参数驱动(例如,基于驱动第一行为模型的两个或更多个输入参数来改变输出属性)(610)。例如,基于(1)用户输入的y位置和(2)用户输入的强度来改变用户界面元素的标度。基于由多个输入参数驱动的行为模型来修改用户界面元素的输出属性,通过在更新用户界面时考虑到用户输入的多个方面而提供了更平滑的用户界面行为,并且为用户提供了物理上更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

接着,响应于检测到第一输入(612),设备至少执行本文所述的操作614和622:

设备基于第一行为模型来随时间推移改变输出属性(614)(例如,位置、尺寸、模糊、颜色、声音)(例如,使用直接操纵来改变y位置yobject,图5b-图5c)。

在一些实施方案中,第一行为模型是预定义物理模型,该预定义物理模型响应于在分析质量块和弹簧模型(有时称为质量块/弹簧模型,例如,如上文参考图5w-图5y所述)中由用户输入的改变施加到质量块上的外力,模拟与一个或多个弹簧(以及任选的一个或多个阻尼器)耦合的质量块的移动(616)。使用模拟质量块和弹簧模型中的移动的规则来改变用户界面,提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,基于第一行为模型随时间推移改变输出属性包括根据分析质量块和弹簧模型,独立于电子设备的帧速率来随时间推移改变输出属性的值(例如,使得即使在设备硬件改变或设备使用不同帧速率时,质量块和弹簧模型在设备之间的行为也是一致的)(618)。独立于设备的帧速率来改变用户界面,提供了使用不同帧速率处理信息的设备之间和该设备的硬件组件之间的用户界面过渡的一致性,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,第一行为模型是预定义物理模型(例如,摩擦/反弹模型,上文参考图5d-图5h和图5p-图5v所述),该预定义物理模型模拟受到摩擦(例如,模拟用户界面元素沿显示器的移动,如同显示器是具有非零摩擦系数的表面一样)以及质量块与一个或多个预定义的边界(例如,显示器边缘)的交互的质量块(例如,用户界面元素,诸如电子邮件列表,图5d,或用户界面520,图5p)的移动(620)。在一些实施方案中,摩擦/反弹物理模型包括摩擦系数。在一些实施方案中,对于运动中的质量块,根据摩擦系数来确定质量块的运动的减速(例如,电子邮件列表的减速,图5d-图5h)。在一些实施方案中,对于运动中的质量块,根据摩擦系数来确定质量块的目标位置。在一些实施方案中,对于运动中的质量块,根据摩擦系数和一个或多个预定义的目标位置(例如,具有预定义分页位置的一组页面中的相应页面的位置,如上文参考图5p-图5v所述)来确定质量块的目标位置。在一些实施方案中,一个或多个预定义的边界指定第一预定义值(例如,下限或最小值)与第二预定义值(例如,上限或最大值(例如,电子邮件列表的顶部,图5b))之间的值范围。在一些实施方案中,一个或多个预定义的边界指定用户界面元素的位置的值范围(例如,第一预定义的边界对应于显示器或滚动列表的底部边缘,第二预定义的边界对应于显示器或滚动列表的顶部边缘,第三预定义的边界对应于显示器或滚动列表的左边缘,和/或第四预定义的边界对应于显示器或滚动列表的右边缘)。在一些实施方案中,相应预定义的边界是输出属性的目标值(例如,显示器或滚动列表的边缘是用户界面对象的目标位置)。在一些实施方案中,反弹率参数决定了当输出属性的值或投影值超过极限值时,输出属性的值随时间推移的改变;输出属性(诸如被滚动列表的位置)表现出反弹行为,该反弹行为根据反弹率平滑地过渡到终端值。使用模拟受到摩擦并与区域边界交互的质量块的移动的规则来改变用户界面,提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

设备基于输出属性的改变(输出属性的改变基于第一行为模型而发生),经由一个或多个输出设备,更新用户界面的呈现(622)(例如,基于y位置输出属性的改变滚动电子邮件列表,图5b-图5c)。

在基于输出属性的改变(输出属性的改变基于第一行为模型而发生)经由一个或多个输出设备来更新用户界面的呈现时,设备检测用户输入的改变(624)。在一些实施方案中,检测用户输入的改变包括停止检测用户输入(例如,检测触摸输入的抬离,诸如用户输入502的抬离,图5d)。在一些实施方案中,检测用户输入的改变包括检测第一输入之后的第二输入(例如,检测后续触摸输入的下触,诸如用户输入514的下触,如图5h)。

在一些实施方案中,检测用户输入的改变包括检测后续触摸输入(例如,用户输入514,图5h)的下触(626)。在一些实施方案中,第一输入包括第一触摸输入的抬离(例如,用户输入502的抬离,图5d),并且检测用户输入的改变包括检测第二触摸输入(例如,改变动画的目标的触摸输入或轻扫手势,诸如用户输入514,图5h)的下触。响应于后续触摸输入无缝地改变用户界面,为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,第一输入是经由第一输入设备(例如,触摸屏112,图5b)接收的,并且检测用户输入的改变包括经由(例如,与第一输入设备不同的)第二输入设备(例如,触敏表面451,图4b)检测第二输入(628)。在一些实施方案中,第一输入设备为以下中的一者:触敏显示器(有时称为触摸屏)、触敏表面(诸如触控板)、(例如,手表的)数字表冠、鼠标滚轮和导航键,并且第二输入设备是前述输入设备中的不同一者。响应于来自不同输入设备的输入无缝地改变用户界面,为用户提供了用于与设备进行交互的附加控制选项。提供控制设备的灵活性增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过使得用户能够更快速地提供输入以实现期望操作并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,第一输入是触摸输入(例如,用户输入502,图5b),并且检测用户输入的改变包括检测触摸输入的抬离(630)(例如,停止检测触摸输入,诸如停止检测用户输入502,图5d)。例如,在检测到触摸输入时,使用弹簧行为模型来移动对象或用户界面,并且在触摸输入被抬离对象时,根据惯性行为模型(例如,摩擦/反弹模型)移动用户界面。响应于触摸输入被移除而无缝地改变用户界面,为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

响应于检测到用户输入的改变(632),设备至少执行本文所述的操作634、636、640和646。

设备基于不同于第一行为模型的第二行为模型随时间推移改变输出属性(634),包括基于基于第一行为模型确定的输出属性的值随时间推移开始改变输出属性(636)。例如,在接触502抬离之后基于摩擦/反弹模型512而不是直接操纵模型来改变电子邮件列表的y位置,这包括开始从使用直接操纵模型确定的值y2开始改变y位置。在一些实施方案中,基于第一行为模型确定的输出属性的值为非零值。

在一些实施方案中,输出属性的值被限于第一预定义值(例如,下限)和第二预定义值(例如,上限)之间的值范围(638)。将输出属性值限制在用户更容易感知的预定义值范围内,为用户提供了更直观的用户体验,并且在一些情况下通过避免生成超出硬件限制的输出来保护设备硬件。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

基于第二行为模型随时间推移改变输出属性包括基于(640)输出属性的值相对于时间的一阶导数来开始改变输出属性。基于第一行为模型确定值的一阶导数。例如,在接触502抬离之后基于摩擦/反弹模型而不是直接操纵模型来改变电子邮件列表的速度,这包括开始从使用直接操纵模型确定的值v2开始改变速度。在一些实施方案中,该值的一阶导数为非零值。在一些实施方案中,该值和该值的一阶导数均对应于与设备从使用第一行为模型切换至使用第二行为模型的时间接近的同一时间点(例如,边界511,图5d)。

在一些实施方案中,基于第二行为模型随时间推移改变输出属性包括基于(642)输出属性的值相对于时间的二阶导数随时间推移开始改变输出属性。基于第一行为模型确定输出属性的值相对于时间的二阶导数。例如,在接触502抬离之后基于摩擦/反弹模型而不是直接操纵模型来改变电子邮件列表的加速度,这包括从使用直接操纵模型确定的值a2开始改变输出属性。在一些实施方案中,输出属性的值相对于时间的二阶导数为非零值。在一些实施方案中,该值、该值相对于时间的一阶导数以及该值相对于时间的二阶导数均对应于相同的时间点(例如,边界511,图5d)。确保当从第一行为模型过渡到第二行为模型时,该值、该值相对于时间的一阶导数以及该值相对于时间的二阶导数保持为连续,确保该动画即使在行为模型之间切换时也具有c2连续性,从而提供以可预测方式响应用户输入的更直观用户界面,并且提高人机界面的效率。通过将输出属性的值及其相对于时间的一阶导数和二阶导数在不同行为模型之间传输来改变用户界面,提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,输出属性的值相对于时间的一阶导数对应于相对于时间的第一连续函数的值(例如,如果在离散的时间间隔处测量连续函数的值,对连续函数进行数字抽样得到的值),并且输出属性的值相对于时间的二阶导数对应于第二连续函数的值(644)(例如,分别在速度图508和加速度图510中示出的连续速度和加速度曲线,图5b-图5n)。使输出属性的值相对于时间的导数对应于连续函数的值,即使按通过设备的处理速度确定的时间间隔周期性地更新导数值,提供了无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

设备基于输出属性的改变(输出属性的改变基于第二行为模型而发生),经由一个或多个输出设备,更新用户界面的呈现(646)(例如,修改电子邮件列表的y位置,图5d-图5h)。

在一些实施方案中,(648)在基于输出属性的改变(输出属性的改变基于第二行为模型而发生)经由一个或多个输出设备来更新用户界面的呈现时,设备检测用户输入的第二改变(例如,后续用户输入514的下触,图5h)。响应于检测到用户输入的第二改变,设备基于不同于第二行为模型(例如,摩擦/反弹模型512,图5h)(任选地也不同于第一行为模型,例如,直接操纵模型,图5c)的第三行为模型(例如,质量块/弹簧模型516,图5i)随时间推移而改变输出属性,包括基于根据第二行为模型确定的输出属性的值(例如,非零值)以及输出属性的值相对于时间的一阶导数随时间推移开始改变输出属性。基于第二行为模型确定值的一阶导数。在一些实施方案中,该值的一阶导数为非零值。在一些实施方案中,该值和值的一阶导数均对应于与设备从使用第二行为模型切换至使用第三行为模型的时间接近的同一时间点。例如,在图5i-图5n中,在检测到接触514之后基于质量块/弹簧模型516而不是摩擦/反弹模型512来改变电子邮件列表的y位置,这包括分别从使用摩擦/反弹模型512确定的值y6、v6和a6开始改变电子邮件列表的y位置、速度和加速度。设备基于输出属性的改变(输出属性的改变基于第二行为模型而发生),经由一个或多个输出设备,更新用户界面的呈现。使用用户界面属性的值和该值相对于时间的导数来改变用户界面,提供了无缝的用户界面过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(650)用户输入包括触摸输入,并且检测用户输入包括检测描述触摸输入的多个输入参数中的第一输入参数的改变。响应于检测到触摸输入,基于第一输入参数经由第一行为模型(例如,如上文参考图5o-图5v所述)来确定相应时间点的输出属性的目标值。检测用户输入的改变包括检测触摸输入的抬离(例如,停止检测到触摸输入)。响应于检测到触摸输入的抬离,输出属性的目标值是一组预先确定的值中的相应预先确定的值,该一组预先确定的值基于输出属性的改变(输出属性的改变基于第二行为模型而发生)而确定(例如,在确定用户界面的目标位置时使用图5o的用户界面520的分页位置)。例如,在一些实施方案中,在检测触摸输入时,相应用户界面对象(“质量块”)经由“弹簧”耦合到触摸输入的位置(例如,弹簧的零位移位置对应于触摸输入的位置),其中相对于触摸输入随时间推移的位置和移动确定弹簧和质量块随时间推移的位移/移动。在一些实施方案中,在触摸输入抬离之后,相对于固定的预定义位置来确定弹簧和质量块的位移/移动(例如,弹簧的零位移位置对应于预定义位置)。在一些实施方案中,预定义位置是一组预定义位置(例如,由分页点所指示的一组页面中的相应页面的位置)中的相应预定义位置。通过在不同行为模型之间传输输出属性的值时,响应于触摸输入被移除而将输出属性的目标值更新为预定义值来改变用户界面,提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,输出属性的值被限于第一预定义值(例如,下限)和第二预定义值(例如,上限)之间的值范围(652)。在一些实施方案中,输出属性的值不限于目标值的值范围(例如,允许输出属性超过目标值的范围,但行为模型导致输出属性最终达到值范围内的目标值)。将目标输出属性值限制为预定义值范围,提供了与真实对象的行为更紧密地对齐的用户界面行为,并且将输出属性限制为用户更容易感知的值,为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(654)用户输入包括触摸输入。检测用户输入包括检测描述触摸输入的多个输入参数中的第一输入参数的改变,并且检测用户输入的改变包括检测触摸输入的抬离(例如,停止检测到触摸输入)。第一行为模型是由第一输入参数的改变驱动的第一预定义物理模型,并且第二行为模型是第二预定义物理模型,其中第二预定义物理模型不同于第一预定义物理模型。在一些实施方案中,第一预定义物理模型和第二预定义物理模型是质量块和弹簧物理模型,其包括相应第一弹簧参数和第二弹簧参数(例如,弹簧常数),并且第一弹簧参数不同于第二弹簧参数。例如,基于具有第一弹簧常数的第一质量块和弹簧物理模型来修改用户界面中的模糊半径(模糊度),并且基于具有第二弹簧常数的第二质量块和弹簧物理模型来修改用户界面的尺寸变化,其中第一行为模型和第二行为模型均至少部分地由用户输入的特征强度的改变驱动,并且其中第一弹簧常数不同于第二弹簧常数。使用不同的基于物理的行为模型来改变用户界面,提供了用于控制输出属性对用户输入的改变的响应性的替代选项,使得用户界面过渡与真实对象的行为更紧密地对齐,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(656)响应于检测到第一输入,更新用户界面的呈现包括基于输出属性的改变(输出属性的改变基于第一行为模型而发生)(例如,滚动电子邮件列表,图5b-图5c),在第一状态和第二状态之间推进第一动画。响应于检测到用户输入的改变,更新用户界面的呈现包括基于输出属性的改变(输出属性的改变基于第二行为模型而发生)(例如,滚动电子邮件列表,图5d-图5h),在第二状态和第三状态之间推进第二动画。通过响应于检测到用户输入的改变而推进用户界面发生流畅动画来平滑地改变用户界面,提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,在检测到用户输入的改变之前基于第一行为模型随时间推移改变输出属性并响应于检测到用户输入的改变而基于第二行为模型随时间推移开始改变输出属性,满足输出属性的二阶(second-order)参数连续性(658)(例如,基于第一行为模型将第一动画推进到第二状态,以及基于第二行为模型从第二状态推进第二动画,在第一行为模型和第二行为模型之间交接之间呈现出c2连续性,如图5n的加速度图510跨越两个交接边界511和517的连续加速度曲线所示)。根据二阶参数连续性无缝地改变用户界面,提供了无缝的用户界面过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(660)电子设备包括存储器(例如,存储器102,图1a),输出属性存储在存储器中,并且改变输出属性包括更新所存储的输出属性。存储用户界面的输出属性的值使得输出属性能够在用于响应于用户输入的改变而更新输出属性值的行为模型之间传输,提供了用户界面过渡的一致性和连续性,并且为用户提供了更直观的用户体验。提供用户界面过渡的一致性和连续性以及改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(662)电子设备包括存储器(例如,存储器102,图1a)。基于第一行为模型确定的输出属性的值和基于第一行为模型确定的输出属性的值相对于时间的一阶导数被存储在存储器中。基于第二行为模型随时间推移改变输出属性使用所存储的输出属性的值以及所存储的输出属性的值相对于时间的一阶导数。存储输出属性的值和输出属性相对于时间的导数值使得值能够在用于响应于用户输入的改变而更新值的行为模型之间传输,提供了用户界面过渡的一致性和连续性,并且为用户提供了更直观的用户体验。提供用户界面过渡的一致性和连续性以及改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,基于输出属性的改变(输出属性的改变基于相应行为模型而发生)更新用户界面的呈现包括根据应用于输出属性的值的变换(例如,线性或非线性内插)来更新用户界面的呈现(664)。在一些实施方案中,基于输出属性值的线性内插(例如,基于用户界面元素的位置值的线性内插,诸如在图5b-图5n中)来更新用户界面(例如,推进动画)。在一些实施方案中,基于输出属性值的非线性内插(例如,基于用户界面元素的标度值的对数内插)来更新用户界面(例如,推进动画)。在一些实施方案中,该变换是预定义的。在一些实施方案中,该变换由应用程序选择(例如,即使行为模型由应用程序独立软件模块提供)。对表示用户界面中的输出类型的输出属性的值应用变换,提供了物理上更直观且更易被用户感知的用户界面行为(例如,如果人眼以对数方式感知输出属性的改变,则基于输出属性的对数内插来改变用户界面使得用户能够更容易且更直观地感知到变化),并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(666)检测用户输入包括检测触摸输入(例如,在触敏表面上,诸如触摸屏112,图4a)以及描述触摸输入的多个输入参数中的一个或多个输入参数的改变(例如,输入参数550和551,图5z)。在检测到触摸输入时,响应于描述触摸输入的多个输入参数中的一个或多个输入参数的改变,随时间推移而直接改变输出属性。在一些实施方案中,触摸输入直接修改输出属性的值(例如,如图5b-图5c和图5o-图5p所示,例如,使用直接操纵模型548和549,图5z)。在一些实施方案中,输出属性表示用户界面的属性,或用户界面中的元素的属性(例如,输出属性关联到并限定用户界面),而输入参数表示输入的属性(例如,输入参数关联到输入并且由输入限定)。响应于描述触摸输入的用户输入参数的改变而直接改变用户界面,提供了在用户期望发生过渡时发生的响应良好的用户界面过渡,并且向用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(668)用户输入包括触摸输入(例如,在触敏表面上,诸如触摸屏112,图4a)以及描述触摸输入的多个输入参数中的一个或多个输入参数的改变(例如,输入参数556和557,图5aa)。在检测到触摸输入时,使用一个或多个行为模型(例如,行为模型558a、559a和560a,图5aa)随时间推移改变输出属性,该一个或多个行为模型由描述触摸输入的多个输入参数中的一个或多个输入参数的改变驱动,并且根据预定义的关系修改输出属性。通过使用由输入参数的改变驱动的行为模型来随时间推移改变输出属性来改变用户界面,提供了用户界面行为的无缝过渡,减少了用户界面的分散用户注意力的突然和/或剧烈变化,并且为用户提供了物理上更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(670)输出属性为第一输出属性(例如,用户界面元素的标度,诸如标度568,图5ab),并且用户界面包括表示对应于用户界面的第二类型的输出的第二输出属性(例如,用户界面中的模糊度,诸如图5ab中的模糊569)。响应于检测到第一输入,设备基于第一行为模型随时间推移改变第二输出属性,并且基于第二输出属性的改变(第二输出属性的改变基于第一行为模型而发生),经由一个或多个输出设备,更新用户界面的呈现。例如,用户界面元素的标度和用户界面中的模糊度均由用户输入的y位置驱动。任选地,虽然第一输出属性和第二输出属性的改变都基于第一行为模型,但对由第一行为模型产生的值施加不同的偏移和/或缩放,以便确定第一输出属性和第二输出属性。例如,偏移系数和缩放系数可用于将第一行为模型的输出映射到适合第一输出属性和第二输出属性中的每者的范围内。在一些实施方案中,设备基于包括第一行为模型和第二行为模型的一组行为模型的相应行为模型随时间推移改变第二输出属性。在一些实施方案中,除了偏移系数和/或缩放系数之外,相应行为模型与第一行为模型相同(例如,具有相同的弹簧常数和任选地,一个或多个其他相同的物理模型参数),而在其他实施方案中,相应行为模型与第一行为模型和第二行为模型不同。基于相同的相应输入参数修改用户界面元素的多个输出属性,提供了用户界面中对象的改变的一致性以及响应于同一用户输入的无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(672)在基于第二输出属性的改变(第二输出属性的改变基于第一行为模型而发生),经由一个或多个输出设备来更新用户界面的呈现时,检测用户输入的改变。响应于检测到用户输入的改变,设备基于第二行为模型(或包括第一行为模型和第二行为模型的一组行为模型的相应行为模型)随时间推移改变输出属性,包括基于以下各项开始改变第二输出属性:基于第一行为模型(或包括第一行为模型和第二行为模型的一组行为模型的不同相应行为模型)确定的第二输出属性的值,以及第二输出属性的值相对于时间的一阶导数。基于第一行为模型确定第二输出属性的值的一阶导数。响应于检测到用户输入的改变,设备基于第二输出属性的改变(第二输出属性的改变基于第二行为模型而发生),经由一个或多个输出设备,更新用户界面的呈现。例如,在检测到用户输入的抬离之后,基于第二行为模型来更新第一输出属性(例如,用户界面元素的标度)和第二输出属性(例如,用户界面中的模糊度),使得当从第一行为模型过渡到第二行为模型时,标度和模糊的值以及这些值相对于时间的一阶导数都保持为连续。基于多个输出属性平滑地改变用户界面,为用户提供了物理上更直观和更完整的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(674)基于第一行为模型和第二行为模型的相应行为模型随时间推移改变第一输出属性包括在第一时间段内将第一输出属性改变第一量。基于第一行为模型随时间推移改变第二输出属性包括在第一时间段内将第二输出属性改变第二量。第二量不同于第一量。在一些实施方案中,相应行为模型将第一输出属性的值(例如,用户界面元素的标度)修改比修改第二输出属性的值(例如,用户界面中的模糊度)更大(或另选地,更小)的程度。使用具有不同参数的行为模型修改多个输出属性,提供了用于控制输出属性对用户输入的改变的响应性的替代选项,使得用户界面过渡与真实对象的行为更紧密地对齐,并且为用户提供了更直观且响应性良好的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户注意力分散、受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

应当理解,对图6a-图6f中的操作进行描述的具体次序仅仅是示例性的,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文结合本文所述的其他方法(例如,方法700和方法800)所述的其他过程的细节同样以类似的方式适用于上文结合图6a-图6f所述的方法600。例如,上文参考方法600描述的用户界面改变、行为模型和输出属性任选地具有本文参考本文所述的其他方法(例如,方法700和800)描述的用户界面改变、行为模型和输出属性中的一个或多个。为了简明起见,此处不再重复这些细节。

图7a-图7c是流程图,示出了根据一些实施方案,响应于输入来更新用户界面的输出属性的方法700。方法700是在具有显示器、触敏表面和用于检测与触敏表面的接触的强度的一个或多个传感器的电子设备(例如,图3中的设备300或图1a中的便携式多功能设备100)处执行的。在一些实施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与显示器集成。在一些实施方案中,显示器与触敏表面是分开的。方法700中的一些操作任选地被组合,并且/或者一些操作的顺序任选地被改变。

如下所述,方法700提供了基于描述用户输入的多个输入参数来更新用户界面的输出属性的直观方式。基于多个输入参数来修改用户界面元素的输出属性,通过在更新用户界面时考虑到用户输入的多个方面而提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

设备显示(702)包括多个用户界面元素(例如,示能表示或视图)的用户界面。多个用户界面元素中的第一用户界面元素与多个输出属性(例如,尺寸、位置、不透明度、模糊等)相关联。

设备检测对应于(例如,在其上或指向)第一用户界面元素(或触敏表面上)的用户输入,包括检测描述用户输入的多个输入参数中的第一输入参数的改变和多个输入参数中的第二输入参数的改变(704)(例如,输入强度564和y位置565,图5ab)。在一些实施方案中,检测用户输入包括检测描述用户输入的多个输入参数中的一个或多个输入参数的改变。在一些实施方案中,根据检测到多个输入参数中的一个或多个输入参数的相应改变来修改第一用户界面元素的一个或多个输出属性。输入参数的示例包括:输入的x位置、或输入相对于特定位置(例如,相对于触摸输入的初始接触位置,相对于显示器的边缘,或相对于另一个并发接触的位置,诸如在捏指手势期间)的x位移、y位置或相对于特定位置(例如,相对于触摸输入的初始接触位置,相对于显示器的边缘,或相对于另一个并发接触的位置,诸如在捏指手势期间)的y位移、检测到的输入强度、输入的速度和输入的持续时间(例如,自检测到输入以来的时间量,诸如在触敏表面上保持输入时自触摸输入的下触以来的时间量)。

设备根据多个输入参数的改变修改(例如,响应于检测到用户输入)第一用户界面元素的一个或多个输出属性,包括至少部分地基于第一输入参数的改变和第二输入参数的改变来修改第一用户界面元素的第一输出属性(706)。例如,在一些实施方案中,根据检测到的输入强度(例如,施加到触敏表面的压力)(例如,强度564,图5ab)和输入的y位置(例如,y位置565,图5ab)的改变来修改相应用户界面元素的标度(例如,标度568,图5ab)。又如,在一些实施方案中,根据检测到的输入强度(例如,强度564,图5ab)和输入的y位置(例如,y位置565,图5ab)的改变来修改相应用户界面元素的模糊(例如模糊半径,诸如模糊569,图5ab)。在一些实施方案中,电子设备包括用于检测与触敏表面的接触的强度的一个或多个传感器(例如,一个或多个接触强度传感器165,图1a)。

在一些实施方案中,(708)根据至少一个行为模型来修改一个或多个输出属性。行为模型是一组规则,该一组规则指定一个或多个输出属性如何随时间推移从相应输出属性的当前值演变。在一些实施方案中,规则指定目标值或如何选择目标值。在一些实施方案中,规则指定检测到的输入如何影响输出属性的目标值和/或输出值。例如,直接操纵模型(例如,直接操纵模型573,图5ab)指定响应于输入参数(例如,y位置565,图5ab)的改变而直接修改输出属性(例如,y位置570,图5ab)。在一些实施方案中,规则是模拟物理模型的规则(例如,质量块/弹簧模型566a或567a,图5ab)。在一些实施方案中,规则指定一个或多个输出属性以及输出属性相对于时间的一个或多个导数如何随时间推移从这些值的对应值或相对于时间的导数而演变。使用指定用户界面的输出属性如何随时间推移而演变的规则来改变用户界面,在用户界面过渡期间提供了一致性和连续性,并且向用户提供了关于用户界面改变的视觉反馈。向用户提供改进的视觉反馈增强了用户体验和设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,根据检测到多个输入参数的改变来修改第一用户界面元素的一个或多个输出属性包括至少部分地基于第一输入参数的改变或第二输入参数的改变来修改第一用户界面元素的第二输出属性(710)(例如,在图5ab中,基于触摸输入的强度564的改变(并基于触摸输入的y位置565的改变)还修改用户界面元素的模糊569)。基于相同的相应输入参数修改用户界面元素的多个输出属性,提供了用户界面中对象的改变的一致性以及无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(712)基于由第一输入参数的改变驱动的第一行为模型来修改第一输出属性。基于由第一输入参数的改变驱动的第二行为模型来修改第二输出属性。第二行为模型不同于第一行为模型。在一些实施方案中,第一预定义物理模型和第二预定义物理模型是质量块和弹簧物理模型,其包括相应第一弹簧参数和第二弹簧参数(例如,弹簧常数),并且第一弹簧参数不同于第二弹簧参数。例如,基于具有第一弹簧常数的第一质量块和弹簧物理模型(例如,质量块/弹簧模型567a,图5ab)来修改用户界面中的模糊半径(模糊度)(例如,模糊569,图5ab),并且基于具有第二弹簧常数的第二质量块和弹簧物理模型(例如,质量块/弹簧模型566a,图5ab)来修改用户界面的尺寸改变(例如,标度568,图5ab),其中第一行为模型和第二行为模型均至少部分地由用户输入的特征强度(例如,强度564,图5ab)的改变驱动,并且其中第一弹簧常数不同于第二弹簧常数。使用由相同的相应输入参数驱动的基于物理的规则(例如,物理模型)修改用户界面元素的多个输出属性,提供了用户界面中对象的改变的一致性以及与真实对象的行为更紧密地对齐的无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(714)根据检测到多个输入参数的改变来修改第一用户界面元素的一个或多个输出属性包括:至少部分地基于第一输入参数(例如,y位置565,图5ab)的改变来修改第一用户界面元素的第二输出属性(例如,模糊569,图5ab);以及至少部分地基于第一输入参数(例如,y位置565,图5ab)的改变来修改第一用户界面元素的第三输出属性(例如,y位置570,图5ab)。基于相同的相应输入参数修改用户界面元素的多个输出属性,提供了用户界面中对象的改变的一致性以及无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(716)检测用户输入包括检测多个输入参数中的第三输入参数(例如,输入的x位置)的改变。根据检测到多个输入参数的改变来修改第一用户界面元素的一个或多个输出属性包括:至少部分地基于第三输入参数的改变来修改第一用户界面元素的第二输出属性(例如,用户界面元素的标度);以及至少部分地基于第三输入参数的改变来修改第一用户界面元素的第三输出属性(例如,用户界面元素的x位置)。基于相同的相应输入参数修改用户界面元素的多个输出属性,提供了用户界面中对象的改变的一致性以及无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(718)第一输入参数是用户输入的特征强度(例如,强度564,图5ab),第二输入参数是用户输入的y位置(例如,y位置565,图5ab),并且第一输出属性是第一用户界面元素的标度(例如,标度568,图5ab)。基于用户输入的特征强度和位置两者来修改用户界面元素的标度,通过在更新用户界面时考虑到用户输入的多个方面而提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,第一输入参数是用户输入的特征强度(例如,强度564,图5ab),第二输入参数是用户输入的y位置(例如,y位置565,图5ab),并且第一输出属性是用户界面中的模糊度(720)(例如,一个或多个用户界面元素的模糊半径,诸如模糊569,图5ab)。基于用户输入的特征强度和位置两者来修改用户界面中的模糊度,通过在更新用户界面时考虑到用户输入的多个方面而提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

设备根据第一用户界面元素的经修改的第一输出属性来更新用户界面(722)。在一些实施方案中,根据相应输入参数的改变来修改多个输出属性。在一些实施方案中,根据多个输入参数的改变来修改相应输出属性。

在一些实施方案中,(724)多个用户界面元素中的第二用户界面元素与第二多个输出属性相关联,并且该方法包括:根据检测到第二多个输入参数的改变来修改第二用户界面元素的一个或多个输出属性,包括至少部分地基于第一输入参数(例如,强度564,图5ab)的改变和第二输入参数(例如,y位置565,图5ab)的改变来修改第二用户界面元素的第一输出属性(例如,第二用户界面元素的标度);以及根据第二用户界面元素的经修改的第一输出属性来更新用户界面。基于多个输入参数来修改用户界面元素的输出属性,通过在更新用户界面时考虑到用户输入的多个方面而提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(726)至少部分地基于第一输入参数的改变和第二输入参数的改变来修改第一用户界面元素的第一输出属性包括基于由第一输入参数和第二输入参数驱动的第一行为模型随时间推移修改第一输出属性。该方法包括:检测用户输入的改变,包括检测第一输入参数和第二输入参数中的进一步改变;以及基于不同于第一行为模型并由第一输入参数和第二输入参数驱动的第二行为模型随时间推移修改第一输出属性,包括基于以下项随时间推移开始改变第一输出属性:基于第一行为模型确定的第一输出属性的值;以及第一输出属性的值相对于时间的一阶导数。基于第一行为模型确定值的一阶导数(例如,如上文参考方法600的操作634所述)。基于多个输入参数修改用户界面元素的输出属性,以及在不同行为模型之间传输输出属性的值,提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

应当理解,对图7a-图7c中的操作进行描述的具体次序仅仅是示例性的,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文关于本文所述的其他方法(例如,方法600和方法800)描述的其他过程的细节同样以类似的方式适用于上文相对于图7a-图7c描述的方法700。例如,上文参考方法700描述的用户界面改变、行为模型和输出属性任选地具有本文参考本文所述的其他方法(例如,方法600和800)描述的用户界面改变、行为模型和输出属性中的一个或多个。为了简明起见,此处不再重复这些细节。

图8a-图8d是流程图,示出了根据一些实施方案,用于响应于用户输入来确定要在用户界面中执行的操作的方法800。方法800是在具有显示器、触敏表面和用于检测与触敏表面的接触的强度的一个或多个传感器的电子设备(例如,图3中的设备300或图1a中的便携式多功能设备80)处执行的。在一些实施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与显示器集成。在一些实施方案中,显示器与触敏表面是分开的。方法800中的一些操作任选地被组合,并且/或者一些操作的顺序任选地被改变。

如下所述,方法800提供了一种直观的方式来响应于用户输入确定要在用户界面中执行的操作。响应于用户输入,基于是否满足与可能的操作相关联的标准在用户界面中执行多个可能操作之一(例如,在两个或更多个要执行操作之间做出决定),为用户提供了用于在用户界面中导航而无需额外输入的额外控制选项。减少执行操作所需的输入数量增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

设备在显示器上显示用户界面,该用户界面包括根据相关联的多个输出属性的值显示的多个用户界面元素,该多个输出属性定义多个用户界面元素中相应用户界面元素的输出属性(例如,位置、尺寸、模糊、颜色、声音)(802)。

设备检测(804)触敏表面上的用户输入(例如,触摸输入,诸如输入589,图5ad),包括检测描述用户输入的多个输入参数中的一个或多个输入参数的改变(例如,位置(包括例如x位置和y位置,作为单个位置参数的子元素或作为单独参数)、速度、加速度、强度和持续时间)。用户输入被引导至多个用户界面元素中的第一用户界面元素。

响应于检测到用户输入(806),设备基于由用户输入的一个或多个输入参数驱动的一个或多个行为模型修改第一用户界面元素的第一输出属性值(第一输出属性是多个输出属性之一)(例如,邮件用户界面500的标度,图5ad)(808)。

在一些实施方案中,由输入的一个或多个输入参数驱动的一个或多个行为模型包括一个或多个预定义物理模型(810)。使用基于物理的规则来改变用户界面提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,一个或多个物理模型包括以下中的一者或多者:模拟与一个或多个弹簧耦合的质量块的移动的质量块和弹簧模型(例如,如上文参考图5w-图5y所述),以及模拟经受摩擦的质量块的移动的摩擦/反弹模型(例如,如上文参考图5d-图5h所述)(例如,具有非零弹簧参数、摩擦系数、减速系数和/或速率参数的物理模型)(812)。使用模拟质量块和弹簧模型中的移动的规则和模拟受到摩擦并与区域边界交互的质量块的移动的规则来改变用户界面,提供了与真实对象的行为更紧密地对齐的无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,基于由用户输入的两个或更多个输入参数驱动的至少一个行为模型来修改第一用户界面元素的第一输出属性值(例如,如本文参考图5ab所述)(814)。使用由多个输入参数驱动的行为模型来修改用户界面元素的输出属性,通过在更新用户界面时考虑到用户输入的多个方面而提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

根据确定用户界面满足第一操作标准,设备在用户界面中执行第一操作(例如,如果第一用户界面元素的y位置高于第一y位置阈值,则显示多任务用户界面,或者如果第一用户界面元素的标度低于第一标度阈值,则显示多任务用户界面,如上文参考图5ad-图5af所述)(816)。第一操作标准包括当第一用户界面元素的第一输出属性值高于第一阈值(例如,第一y位置阈值,诸如y1,图5ao,例如,从显示器的底部边缘开始测量y位置)时满足的标准。

在一些实施方案中,第一操作标准还包括当不同于第一用户界面元素的第二用户界面元素的第二输出属性值满足对应阈值时满足的第二标准(818)。例如,第二输出属性是第二用户界面元素的x位置,对应阈值是特定屏幕位置,诸如屏幕位置的中间,并且当第二输出属性小于对应阈值时(例如,用户界面元素的右边缘低于x位置阈值xth,图5ay-图5ba)时,满足第二标准。基于多个用户界面元素的属性来确定要在用户界面中执行什么操作,通过在确定要执行的操作时考虑多个用户界面元素,提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

根据确定用户界面满足第二操作标准,设备在用户界面中执行不同于第一操作的第二操作(例如,如果第一用户界面元素的y位置低于第一y位置阈值,则重新显示应用程序用户界面而不是多任务用户界面,如本文参考图5an-图5ap所述)(820)。第二操作标准包括当第一用户界面元素的第一输出属性值低于第一阈值时满足的标准。在一些实施方案中,显示用户界面包括显示第一应用程序用户界面,并且要在用户界面中执行的操作包括重新显示第一应用程序用户界面、显示多任务用户界面、显示应用程序启动(例如,home屏幕)用户界面、显示第二应用程序用户界面(例如,第二应用程序是显示当前第一应用程序之前上一被显示的应用程序),以及显示控制中心用户界面。例如,第一操作是前述操作之一,并且第二操作是前述操作中的不同操作。

在一些实施方案中,(822)显示用户界面包括显示应用程序用户界面(例如,邮件应用程序用户界面500,图5ad)。第一操作包括显示多任务用户界面(例如,多任务用户界面,图5af)。第二操作包括重新显示应用程序用户界面(例如,如上文参考图5an-图5ap所述)。基于是否满足与可能的操作相关联的标准,从显示应用程序用户界面切换至或不切换至显示多任务用户界面,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。减少执行操作所需的输入数量增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,(824)第一操作包括显示应用程序启动(例如,home屏幕)用户界面(例如,home屏幕597,图5aj)。第二操作包括显示多任务用户界面(例如,多任务用户界面,图5af)。基于是否满足与可能的操作相关联的标准,执行从应用程序启动用户界面和多任务用户界面选择的操作,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。减少执行操作所需的输入数量增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,响应于检测到用户输入,根据确定用户界面满足第三操作标准,设备在用户界面中执行第三操作(826)(例如,如果第一用户界面元素的y位置高于第二y位置阈值(和第一y位置阈值),则显示home屏幕用户界面,而不是显示多任务用户界面或重新显示应用程序用户界面,或者如本文参考图5ag-图5aj所述,如果第一用户界面元素的标度低于第一标度阈值s2和第二标度阈值s1)。第三操作标准包括当第一用户界面元素的第一输出属性值满足第二阈值时满足的标准(例如,第一用户界面元素的y位置高于大于第一y位置阈值的第二y位置阈值,或第一用户界面元素的标度低于标度阈值,诸如第二标度阈值s1,如图5ag-图5aj所示)。响应于用户输入,基于是否满足与可能的操作相关联的标准在用户界面中执行多个可能操作之一(例如,在三个或更多个要执行操作之间做出决定),为用户提供了用于在用户界面中导航而无需额外输入的额外控制选项。减少执行操作所需的输入数量增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备响应于检测到用户输入,根据确定用户界面满足第四操作标准,在用户界面中执行不同于第一操作的第四操作(828)(例如,如果第一用户界面元素的x位置(或第一用户界面元素的左边缘)低于第一x位置阈值,则显示控制中心用户界面,如本文参考图5ay-图5ba所述)。第四操作标准包括当第一用户界面元素的第一输出属性值低于第三阈值(例如,第一x位置阈值,例如,从显示器的左边缘测量x位置)时满足的标准。响应于用户输入,基于是否满足与可能的操作相关联的标准在用户界面中执行多个可能操作之一(例如,在四个或更多个要执行操作之间做出决定),为用户提供了用于在用户界面中导航而无需额外输入的额外控制选项。减少执行操作所需的输入数量增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,相应阈值为(830)第一阈值(例如,第一位置阈值)。设备响应于检测到用户输入,根据确定用户界面满足第五操作标准,在用户界面中执行不同于第一操作的第五操作(例如,如果第一用户界面元素的x位置高于第二x位置阈值,则显示第二应用程序用户界面(例如,在显示当前应用程序之前上一被显示的应用程序),如本文参考图5au-图5ax所述)。第五操作标准包括当第一用户界面元素的第一输出属性值高于第四阈值(例如,大于第一x位置阈值的第二x位置阈值)时,或任选地,在第一用户界面元素的第二输出属性值(例如,第一用户界面元素的右边缘)低于与第三阈值相同的第四阈值(例如,阈值xth,图5au-图5ba)时满足的标准。响应于用户输入,基于是否满足与可能的操作相关联的标准在用户界面中执行多个可能操作之一(例如,在五个或更多个要执行操作之间做出决定),为用户提供了用于在用户界面中导航而无需额外输入的额外控制选项。减少执行操作所需的输入数量增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备响应于检测到用户输入,基于第一用户界面元素的经修改的第一输出属性值来更新用户界面(832)。在一些实施方案中,显示用户界面包括显示应用程序用户界面,并且响应于检测到用户输入,更新用户界面,使得应用程序用户界面被显示为一个用户界面元素(例如,用户界面“卡”,可以使用来自应用程序的内容作为内容变化来动态更新其显示,如图5ae所示),并且在一些实施方案中,用户界面还包括附加的用户界面元素(例如,附加用户界面“卡”,如图5af所示)。还根据多个输出属性的值来显示附加用户界面元素。在一些实施方案中,基于由用户输入的一个或多个参数驱动的一个或多个行为模型来修改附加用户界面元素的相应输出属性。在一些实施方案中,基于第一用户界面元素的经修改的第一输出属性值(例如,邮件卡500的x位置,图5af)来修改第二用户界面元素的输出属性值(例如,控制中心卡592的x位置,图5af)(例如,跨越不同用户界面元素的输出属性彼此链接/具有预定义的关系)。基于对用户界面的输出属性的修改而不是直接基于用户输入的输入参数来更新用户界面,提供了无缝用户界面过渡,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备根据第一用户界面元素的第一输出属性值来确定要在用户界面中执行的相应操作,而不考虑用户输入的多个输入参数的值(例如,使用由行为模型修改的第一用户界面的第一输出属性的值做出决策,而不是使用输入参数的值来做出决策)(834)。基于用户界面的输出属性而不是直接基于用户输入的输入参数在用户界面中执行操作,提供了无缝用户界面过渡,并且向用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备基于第一输出属性在第一时间点之后的第二时间点的投影值是否满足相应操作标准的相应阈值(例如,基于投影y位置,如本文参考y位置计596所述,图5ak-图5am),在第一时间点确定用户界面是否满足相应操作标准(836)。基于输出属性的投影值是否满足与可能的操作相关联的标准来在用户界面中执行多个可能的操作中的一个,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。提供附加控制选项,同时减少执行操作所需的输入数量,增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备根据第一用户界面元素的速度(例如,移动速度和/或方向)确定要在用户界面中执行的相应操作(838)(例如,如本文参考速度计595所述,图5ak-图5am)。在一些实施方案中,基于第一用户界面元素的速度来确定要在用户界面中执行的操作。在一些实施方案中,基于第一用户界面元素的速度和方向来确定要执行的操作。例如,如果第一用户界面元素的速度高于阈值速度并且在第一方向上(例如,在第一角度范围内的方向,诸如向上),则显示多任务用户界面。如果速度高于第一阈值速度并且在第二方向上(例如,左,或包括左(270度)的第二角范围内),则显示控制中心用户界面(例如,图5ba)。如果速度在第三方向上(例如,右,或在第三角范围内,诸如与第二角范围相反的第三角范围,诸如包括右(90度)的第三角范围),则显示先前显示的应用程序(例如,除当前应用程序之外的最近访问的应用程序)。如果速度低于第一阈值速度,则当前应用程序被重新显示(例如,图5ap)(例如,无论方向如何)。如果速度高于第二阈值速度(其大于第一阈值),并且任选地也在第一方向上或在第一角范围内(例如,向上),则显示home屏幕(例如,图5aj)。在一些实施方案中,速度用于确定(例如,沿具有非零摩擦系数的表面移动的质量块的)投影最终位置,并且投影最终位置用于确定要在用户界面中执行的操作(例如,如本文参考图5ak-图5am所述)。基于用户界面元素的速度来在用户界面中执行多个可能的操作中的一个,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。提供附加控制选项,同时减少执行操作所需的输入数量,增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备根据第一用户界面元素的位置来确定要在用户界面中执行的相应操作(840)。在一些实施方案中,如果第一用户界面元素的位置高于第一阈值位置,则显示多任务用户界面;如果低于第一阈值位置,则重新显示当前应用程序;如果高于第二阈值位置,则显示home屏幕,并且如果低于第二阈值位置,则显示home屏幕或显示多任务用户界面(例如,显示home屏幕还是多任务用户界面进一步基于第一用户界面元素的速度)。在一些实施方案中,速度用于确定(例如,沿具有非零摩擦系数的表面移动的质量块的)投影最终位置,并且投影最终位置用于确定启发手段(例如,如本文参考图5ak-图5am所述)。基于用户界面元素的位置来在用户界面中执行多个可能的操作中的一个,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。提供附加控制选项,同时减少执行操作所需的输入数量,增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备根据第一用户界面元素的尺寸(例如,标度)来确定要在用户界面中执行的相应操作(842)。在一些实施方案中,如果第一用户界面元素的尺寸高于第一阈值尺寸(例如,s1,图5ae),则显示多任务用户界面(例如,如本文参考图5ad-图5af所述);如果用户界面元素的尺寸低于第一阈值尺寸,则显示home屏幕(例如,如本文参考图5ag-图5aj所述);如果用户界面元素的尺寸高于第二阈值尺寸,则重新显示当前应用程序;并且如果用户界面元素的尺寸低于第二阈值尺寸,则显示home屏幕或显示多任务用户界面(例如,如果用户界面元素的尺寸低于第二阈值尺寸,则显示home屏幕还是多任务用户界面基于用户界面元素的尺寸高于还是低于第一阈值尺寸)。基于用户界面元素的尺寸来在用户界面中执行多个可能的操作中的一个,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。提供附加控制选项,同时减少执行操作所需的输入数量,增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备根据第一用户界面元素的第一输出属性值和第二输出属性值(例如,根据第一用户界面元素的y位置和标度,或第一用户界面元素的y位置和x位置)确定要在用户界面中执行的相应操作(844)。基于用户界面元素的多个属性来在用户界面中执行多个可能的操作中的一个,为用户提供了用于在用户界面中导航而不需要附加输入的附加控制选项。提供附加控制选项,同时减少执行操作所需的输入数量,增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过帮助用户更快地实现预期结果并减少操作设备/与设备交互时的用户错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

在一些实施方案中,设备根据第一用户界面元素的相应第一输出属性值和不同于第一用户界面元素的第二用户界面元素的相应第二输出属性值来确定要在用户界面中执行的相应操作(846)。(例如,第二输出属性是多个输出属性中的一个。)例如,相应的第一输出属性和第二输出属性是第一卡和第二卡(例如,浏览器卡591和邮件卡500,图5av)的x位置,并且确定显示多任务用户界面还是应用程序界面是根据两者的预定义组合(例如,平均值)确定的,或者确定切换到第一应用程序还是第二应用程序基于显示器上第一应用程序的表示的标度和显示器上第二应用程序的表示的标度的比较(例如,邮件卡500的标度与浏览器卡591的标度比较,图5af)。基于多个用户界面元素的属性来确定要在用户界面中执行什么操作,通过在确定要执行的操作时考虑多个用户界面元素,提供了更平滑的用户界面行为,并且为用户提供了更直观的用户体验。提供改进的用户体验增强了设备的可操作性,并且使得用户-设备界面更高效(例如,通过减少操作设备/与设备进行交互时的用户受挫感和错误),这又通过使得用户能够更快速且更高效地使用设备而减少了电力使用并且改善了设备的电池寿命。

应当理解,对图8a-图8d中的操作进行描述的具体次序仅仅是示例性的,并非旨在表明所述次序是可以执行这些操作的唯一次序。本领域的普通技术人员会想到多种方式来对本文所述的操作进行重新排序。另外,应当注意,本文关于本文所述的其他方法(例如,方法600和方法700)描述的其他过程的细节同样以类似的方式适用于上文相对于图8a-图8d描述的方法800。例如,上文参考方法800描述的用户界面改变任选地具有本文参考本文所述的其他方法(例如,方法600和700)描述的用户界面改变的特征中的一个或多个。为了简明起见,此处不再重复这些细节。

上文参考图6a-图6f、图7a-图7c以及图8a-图8d描述的操作任选地由图1a-图1b所描绘的部件来实现。例如,检测操作606、624、704和804任选地由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类器170中的事件监视器171检测在触敏显示器112上的接触,并且事件分配器模块174将事件信息传送到应用程序136-1。应用程序136-1的相应事件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的第一接触是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如对用户界面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190任选地使用或调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件处理程序190访问相应gui更新器178来更新应用程序所显示的内容。类似地,本领域的技术人员会清楚地知道基于在图1a-图1b中所描绘的部件可如何实现其他过程。

出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而,上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施方案是为了最佳地阐明本发明的原理及其实际应用,以便由此使得本领域的其他技术人员能够最佳地使用具有适合于所构想的特定用途的各种修改的本发明以及各种所描述的实施方案。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1