CN107797655A - 用于生成触觉输出的设备、方法和图形用户界面 - Google Patents
用于生成触觉输出的设备、方法和图形用户界面 Download PDFInfo
- Publication number
- CN107797655A CN107797655A CN201710728497.2A CN201710728497A CN107797655A CN 107797655 A CN107797655 A CN 107797655A CN 201710728497 A CN201710728497 A CN 201710728497A CN 107797655 A CN107797655 A CN 107797655A
- Authority
- CN
- China
- Prior art keywords
- tactile output
- state
- low latency
- user
- instruction
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 220
- 230000004044 response Effects 0.000 claims description 282
- 230000003993 interaction Effects 0.000 claims description 87
- 230000015654 memory Effects 0.000 claims description 44
- 230000006399 behavior Effects 0.000 claims description 14
- 238000002360 preparation method Methods 0.000 claims description 10
- 230000005055 memory storage Effects 0.000 claims 1
- 238000012545 processing Methods 0.000 description 137
- 230000008859 change Effects 0.000 description 121
- 230000033001 locomotion Effects 0.000 description 110
- 238000001514 detection method Methods 0.000 description 73
- 238000003825 pressing Methods 0.000 description 65
- 230000006870 function Effects 0.000 description 41
- 230000000694 effects Effects 0.000 description 40
- 230000008569 process Effects 0.000 description 36
- 238000010586 diagram Methods 0.000 description 33
- 230000009466 transformation Effects 0.000 description 31
- 239000008186 active pharmaceutical agent Substances 0.000 description 28
- 238000004891 communication Methods 0.000 description 19
- 230000005611 electricity Effects 0.000 description 19
- 230000001965 increasing effect Effects 0.000 description 17
- 230000010365 information processing Effects 0.000 description 17
- 230000003287 optical effect Effects 0.000 description 17
- 230000004913 activation Effects 0.000 description 16
- 238000012544 monitoring process Methods 0.000 description 16
- 238000003860 storage Methods 0.000 description 16
- 230000001360 synchronised effect Effects 0.000 description 16
- 230000002093 peripheral effect Effects 0.000 description 15
- 230000008878 coupling Effects 0.000 description 14
- 238000010168 coupling process Methods 0.000 description 14
- 238000005859 coupling reaction Methods 0.000 description 14
- 238000006073 displacement reaction Methods 0.000 description 12
- 238000005516 engineering process Methods 0.000 description 12
- 230000009471 action Effects 0.000 description 11
- 238000007726 management method Methods 0.000 description 11
- 238000005096 rolling process Methods 0.000 description 11
- 238000009826 distribution Methods 0.000 description 10
- 238000005259 measurement Methods 0.000 description 10
- 239000003638 chemical reducing agent Substances 0.000 description 9
- 230000003247 decreasing effect Effects 0.000 description 9
- 238000003672 processing method Methods 0.000 description 9
- 206010044565 Tremor Diseases 0.000 description 8
- 230000002708 enhancing effect Effects 0.000 description 8
- 238000009499 grossing Methods 0.000 description 8
- 230000007935 neutral effect Effects 0.000 description 8
- 238000000926 separation method Methods 0.000 description 8
- 230000000007 visual effect Effects 0.000 description 8
- 230000014509 gene expression Effects 0.000 description 7
- 230000003321 amplification Effects 0.000 description 6
- 230000004438 eyesight Effects 0.000 description 6
- 238000007689 inspection Methods 0.000 description 6
- 238000004898 kneading Methods 0.000 description 6
- 230000004048 modification Effects 0.000 description 6
- 238000012986 modification Methods 0.000 description 6
- 238000003199 nucleic acid amplification method Methods 0.000 description 6
- 230000009467 reduction Effects 0.000 description 6
- 230000005236 sound signal Effects 0.000 description 6
- 238000000844 transformation Methods 0.000 description 6
- 230000000977 initiatory effect Effects 0.000 description 5
- 101100127285 Drosophila melanogaster unc-104 gene Proteins 0.000 description 4
- 230000001133 acceleration Effects 0.000 description 4
- 230000008901 benefit Effects 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000013507 mapping Methods 0.000 description 4
- 230000010355 oscillation Effects 0.000 description 4
- 238000010408 sweeping Methods 0.000 description 4
- 238000012360 testing method Methods 0.000 description 4
- 230000007704 transition Effects 0.000 description 4
- 230000001960 triggered effect Effects 0.000 description 4
- 230000005540 biological transmission Effects 0.000 description 3
- 238000003490 calendering Methods 0.000 description 3
- 230000001934 delay Effects 0.000 description 3
- 230000003111 delayed effect Effects 0.000 description 3
- 238000013461 design Methods 0.000 description 3
- 238000002156 mixing Methods 0.000 description 3
- 230000035807 sensation Effects 0.000 description 3
- 230000021317 sensory perception Effects 0.000 description 3
- 238000012163 sequencing technique Methods 0.000 description 3
- 102000040350 B family Human genes 0.000 description 2
- 108091072128 B family Proteins 0.000 description 2
- 241000406668 Loxodonta cyclotis Species 0.000 description 2
- 230000003213 activating effect Effects 0.000 description 2
- 230000002776 aggregation Effects 0.000 description 2
- 238000004220 aggregation Methods 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000033228 biological regulation Effects 0.000 description 2
- 210000004556 brain Anatomy 0.000 description 2
- 230000001413 cellular effect Effects 0.000 description 2
- 238000012217 deletion Methods 0.000 description 2
- 230000037430 deletion Effects 0.000 description 2
- 230000001419 dependent effect Effects 0.000 description 2
- 230000001976 improved effect Effects 0.000 description 2
- 230000014759 maintenance of location Effects 0.000 description 2
- 239000000203 mixture Substances 0.000 description 2
- 230000008447 perception Effects 0.000 description 2
- 230000008707 rearrangement Effects 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 239000007787 solid Substances 0.000 description 2
- 239000013589 supplement Substances 0.000 description 2
- 208000012661 Dyskinesia Diseases 0.000 description 1
- PEDCQBHIVMGVHV-UHFFFAOYSA-N Glycerine Chemical compound OCC(O)CO PEDCQBHIVMGVHV-UHFFFAOYSA-N 0.000 description 1
- 230000005355 Hall effect Effects 0.000 description 1
- 240000001439 Opuntia Species 0.000 description 1
- 241001422033 Thestylus Species 0.000 description 1
- 239000012190 activator Substances 0.000 description 1
- 239000000654 additive Substances 0.000 description 1
- 239000002390 adhesive tape Substances 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 230000000295 complement effect Effects 0.000 description 1
- 238000004590 computer program Methods 0.000 description 1
- 230000001143 conditioned effect Effects 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 238000000151 deposition Methods 0.000 description 1
- 238000007599 discharging Methods 0.000 description 1
- 210000005069 ears Anatomy 0.000 description 1
- 229920001746 electroactive polymer Polymers 0.000 description 1
- 230000007613 environmental effect Effects 0.000 description 1
- 230000007717 exclusion Effects 0.000 description 1
- 239000004744 fabric Substances 0.000 description 1
- 238000010438 heat treatment Methods 0.000 description 1
- 230000003116 impacting effect Effects 0.000 description 1
- 210000003127 knee Anatomy 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 230000007774 longterm Effects 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000001404 mediated effect Effects 0.000 description 1
- 229910044991 metal oxide Inorganic materials 0.000 description 1
- 150000004706 metal oxides Chemical class 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000003032 molecular docking Methods 0.000 description 1
- 230000008450 motivation Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 229920000642 polymer Polymers 0.000 description 1
- 230000007425 progressive decline Effects 0.000 description 1
- 230000002035 prolonged effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000004080 punching Methods 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 230000000630 rising effect Effects 0.000 description 1
- 239000011435 rock Substances 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 235000015170 shellfish Nutrition 0.000 description 1
- 230000008054 signal transmission Effects 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
- 230000004382 visual function Effects 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
- XLYOFNOQVPJJNP-UHFFFAOYSA-N water Substances O XLYOFNOQVPJJNP-UHFFFAOYSA-N 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/016—Input arrangements with force or tactile feedback as computer generated output to the user
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/16—Constructional details or arrangements
- G06F1/1613—Constructional details or arrangements for portable computers
- G06F1/1633—Constructional details or arrangements of portable computers not specific to the type of enclosures covered by groups G06F1/1615 - G06F1/1626
- G06F1/1684—Constructional details or arrangements related to integrated I/O peripherals not covered by groups G06F1/1635 - G06F1/1675
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F1/00—Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
- G06F1/26—Power supply means, e.g. regulation thereof
- G06F1/32—Means for saving power
- G06F1/3203—Power management, i.e. event-based initiation of a power-saving mode
- G06F1/3234—Power saving characterised by the action undertaken
- G06F1/325—Power saving in peripheral device
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/0485—Scrolling or panning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0487—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser
- G06F3/0488—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures
- G06F3/04883—Interaction techniques based on graphical user interfaces [GUI] using specific features provided by the input device, e.g. functions controlled by the rotation of a mouse with dual sensing arrangements, or of the nature of the input device, e.g. tap gestures based on pressure sensed by a digitiser using a touch-screen or digitiser, e.g. input of commands through traced gestures for inputting data by handwriting, e.g. gesture or text
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/01—Indexing scheme relating to G06F3/01
- G06F2203/014—Force feedback applied to GUI
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2203/00—Indexing scheme relating to G06F3/00 - G06F3/048
- G06F2203/048—Indexing scheme relating to G06F3/048
- G06F2203/04806—Zoom, i.e. interaction techniques or interactors for controlling the zooming operation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0481—Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
- G06F3/0482—Interaction with lists of selectable items, e.g. menus
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04845—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range for image manipulation, e.g. dragging, rotation, expansion or change of colour
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/01—Input arrangements or combined input and output arrangements for interaction between user and computer
- G06F3/048—Interaction techniques based on graphical user interfaces [GUI]
- G06F3/0484—Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
- G06F3/04847—Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F40/00—Handling natural language data
- G06F40/10—Text processing
- G06F40/166—Editing, e.g. inserting or deleting
- G06F40/177—Editing, e.g. inserting or deleting of tables; using ruled lines
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Human Computer Interaction (AREA)
- Computer Hardware Design (AREA)
- User Interface Of Digital Computer (AREA)
- Input From Keyboards Or The Like (AREA)
Abstract
本发明题为“用于生成触觉输出的设备、方法和图形用户界面”。本发明公开了一种电子设备,当触觉输出发生器处于低功率状态时,所述电子设备接收用户交互已开始的指示。如果所述指示符合触觉输出发生器准备标准,则所述设备在第一时间将所述触觉输出发生器设置为低延迟状态。此后,如果所述用户交互已经到达所述用户交互的相应部分,所述相应部分与从所述第一时间起预定义的时间量已过之前的触觉输出相关联,并且所述触觉输出发生器仍处于所述低延迟状态,则所述设备使用所述触觉输出发生器以降低的延迟生成所述触觉输出。如果在从所述第一时间起至少所述预定义的时间量内没有生成触觉输出,则所述设备将所述触觉输出发生器从所述低延迟状态转变到所述低功率状态。
Description
相关申请
本专利申请要求于2016年9月6日提交的美国临时专利申请序列号 62/384,159的优先权,该美国临时专利申请全文以引用方式并入本文。
技术领域
本文整体涉及具有触敏表面的电子设备,包括但不限于生成触觉输出以 向用户提供触觉反馈的具有触敏表面的电子设备。
背景技术
触敏表面作为计算机和其他电子计算设备的输入设备的使用在近年来 显著增长。示例性触敏表面包括触控板和触摸屏显示器。此类表面广泛地用 于操纵显示器上的用户界面及其中的对象。示例性用户界面对象包括数字图 像、视频、文本、图标和控制元件(诸如按钮)以及其他图形。
触觉反馈(通常与视觉和/或音频反馈相结合)常用于尝试使用户界面和 用户界面对象的操纵对于用户更有效且更直观,从而改善电子设备的可操作 性。
然而,响应于相同手势而提供不同触觉反馈的应用给用户造成了挑战, 从而可引起非预期操作。当设备执行非预期操作时,用户需要取消此类操作 并再次提供输入。这些操纵繁琐且冗长。此外,由于不得不撤销非预期操作 并再次提供输入,这会花费比所必需的时间更长的时间,从而浪费能量。这 后一考虑在电池驱动设备中是特别重要的。因此,希望具有用于提供触觉反 馈的框架。
发明内容
因此,需要这样的电子设备,所述电子设备具有用于提供触觉反馈(通 常与视觉和/或音频反馈相结合)的更快、更有效且更一致的方法和界面,继 而使用户界面的操纵对于用户更有效且更直观。此类方法和界面任选地补充 或替换用于提供触觉反馈的常规方法。此类方法和界面通过以下方式降低来 自用户的输入的数量、范围和/或性质:帮助用户理解所提供的输入与设备对 输入的响应之间的连接,从而创建更有效的人机界面。此外,此类方法和界 面为多个软件应用提供更一致的人机界面。对于电池驱动设备,此类方法和界面可节省用电并且增加两次电池充电之间的时间。
借助所公开的设备可减少或消除与具有触敏表面的电子设备的用户界 面相关联的上述缺陷和其他问题。在一些实施方案中,所述设备是台式计算 机。在一些实施方案中,所述设备是便携式的(例如,笔记本电脑、平板电 脑或手持设备)。在一些实施方案中,所述设备是个人电子设备(例如,可 穿戴电子设备,诸如手表)。在一些实施方案中,所述设备具有触控板。在 一些实施方案中,所述设备具有触敏显示器(也称为“触摸屏”或“触摸屏 显示器”)。在一些实施方案中,所述设备具有图形用户界面(GUI)、一个或 多个处理器、存储器、一个或多个模块、以及存储在存储器中以用于执行多 个功能的程序或指令集。在一些实施方案中,用户主要通过用触笔和/或手指 接触和用手势操控触敏表面来与GUI进行交互。在一些实施方案中,这些功 能任选地包括图像编辑、画图、呈现、文字处理、电子表格制作、玩游戏、 接打电话、视频会议、收发电子邮件、即时消息通信、健身支持、数字摄影、 数字视频记录、网络浏览、数字音乐播放、记事本制作和/或数字视频播放。 用于执行这些功能的可执行指令任选地被包括在被配置用于由一个或多个处 理器执行的非暂态计算机可读存储介质或其他计算机程序产品中。
根据一些实施方案,在具有显示器、一个或多个输入设备和一个或多个 触觉输出发生器的电子设备处执行一种方法。该方法包括在显示器上显示第 一软件应用的用户界面。用户界面包括已为其分配由独立于应用的模块提供 的多个用户交互模型中的用户交互模型的多个元素,所述多个元素包括已为 其分配第一用户交互模型的第一元素,所述多个元素具有由第一软件应用的 特定于应用的模块提供的内容。第一用户交互模型定义用户界面如何对指向 用户界面的第一元素的输入作出响应。该方法还包括在显示用户界面时,经 由所述一个或多个输入设备检测指向用户界面的第一元素的输入。该方法还 包括响应于检测到该输入:基于该输入的特征来更新显示器上的用户界面; 根据确定该输入符合第一用户交互模型所指定的触觉输出标准,生成对应于 该输入的第一触觉输出;以及根据确定该输入不符合第一用户交互模型所指 定的触觉输出标准,放弃第一触觉输出的生成。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括在显示器上显示用户界面;以 及检测触发与触觉输出相关联的第一用户界面事件的第一条件的发生。生成 第一用户界面事件包括显示用户界面的一个或多个变化。该设备将不能够在 相应时间量内生成与第一用户界面事件相关联的触觉输出。该方法还包括响 应于检测到第一条件的发生,根据确定第一用户界面事件对应于第一用户界 面事件类别:使生成第一用户界面事件延迟至少相应时间量;以及在使生成 第一用户界面事件延迟至少相应时间量之后,显示用户界面的所述一个或多 个变化并且生成与第一用户界面事件相关联的触觉输出。用户界面的所述一 个或多个变化的显示和与第一用户界面事件相关联的触觉输出的生成同步。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括在所述一个或多个触觉输出发 生器处于低功率状态时,接收用户交互已开始的指示。用户交互的相应部分 与触觉输出相关联。低功率状态是以第一延迟量生成触觉输出的状态。该方 法还包括响应于接收到与触觉输出相关联的用户交互已开始的指示,根据确 定该指示符合触觉输出发生器准备标准,在第一时间将所述一个或多个触觉 输出发生器设定为低延迟状态。低延迟状态是以低于第一延迟量的第二延迟 量生成触觉输出的状态。该方法还包括在将所述一个或多个触觉输出发生器 设定为低延迟状态之后:根据确定在经过自第一时间起的预定义时间量之前 用户交互已达到与触觉输出相关联的用户交互的相应部分并且所述一个或多 个触觉输出发生器仍处于低延迟状态,使用所述一个或多个触觉输出发生器 以第二延迟量生成触觉输出;以及根据确定在至少自第一时间起的预定义时 间量内尚未生成触觉输出,使所述一个或多个触觉输出发生器从低延迟状态 转变为低功率状态。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括在通过独立于应用的模块将第 一类型的事件与第一触觉输出相关联,并且将不同于第一类型的事件的第二 类型的事件与不同于第一触觉输出的第二触觉输出相关联时,从第一应用接 收第一信息;以及响应于从第一应用接收到第一信息,生成对第一信息的响 应,包括:根据确定第一信息对应于第一类型的应用事件,使用所述一个或 多个触觉输出发生器生成第一触觉输出;以及根据确定第一信息对应于不同 于第一类型的第二类型的应用事件,使用所述一个或多个触觉输出发生器生 成不同于第一触觉输出的第二触觉输出。该方法还包括在生成对第一信息的 响应之后,从不同于第一应用的第二应用接收第二信息;以及响应于从第二 应用接收到第二信息,生成对第二信息的响应,包括:根据确定第二信息对 应于第一类型的应用事件,使用所述一个或多个触觉输出发生器生成第一触 觉输出;以及根据确定第二信息对应于第二类型的应用事件,使用所述一个 或多个触觉输出发生器生成第二触觉输出。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括在独立于应用的模块处,从与 第一应用相关联的特定于应用的模块接收有关指向第一应用的用户界面的输 入的信息。响应于检测到该输入而在第一应用的用户界面中执行的操作与特 定于应用的模块所指定的触觉输出模式相关联。有关该输入的信息包括指示 响应于检测到该输入而在用户界面中执行的操作的量值的信息。该方法还包 括响应于接收到有关指向第一应用的用户界面的输入的信息,经由所述一个 或多个触觉输出发生器生成与在第一应用的用户界面中执行的操作相对应的 触觉输出。触觉输出具有特定于应用的模块所指定的触觉输出模式。触觉输 出具有根据响应于检测到该输入而在第一应用的用户界面中执行的操作的量 值来确定的幅度。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括在显示器上显示用户界面;以 及在显示器上显示用户界面时且在所述一个或多个触觉输出发生器处于低功 率状态时,检测经由触敏表面进行的第一用户交互。该方法还包括响应于检 测到第一用户交互,将所述一个或多个触觉输出发生器设定为低延迟状态; 以及在将所述一个或多个触觉输出发生器设定为低延迟状态之后,检测作为 与第一用户交互相同的用户交互序列的一部分的第二用户交互。该方法还包 括响应于检测到第二用户交互,生成对应于第二用户交互的触觉输出。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括接收对第一用户界面操作的第 一请求。第一用户界面操作是与第一触觉输出相关联的相应用户界面元素中 第一类型的变化。该方法还包括响应于接收到第一请求:执行第一用户界面 操作并生成第一触觉输出。该方法还包括在执行第一用户界面操作之后,接 收对与第二触觉输出相关联的第二用户界面操作的第二请求;以及响应于接 收到第二请求,根据确定对第二用户界面操作的第二请求包括对与第二触觉 输出相关联的用户界面中第一类型的变化的实例的请求:确定从与生成触觉 输出的相应用户界面元素中第一类型的变化的最近在先实例相对应的时间 点,到与第二请求所要求的相应用户界面元素中第一类型的变化相对应的时 间点的时间间隔;根据确定该时间间隔小于预定义时间段,执行第二用户界 面操作而不生成第二触觉输出;以及根据确定该时间间隔大于预定义时间段, 执行第二用户界面操作并生成第二触觉输出。
根据一些实施方案,在具有显示器、触敏表面和一个或多个触觉输出发 生器的电子设备处执行一种方法。该方法包括在独立于应用的模块处,从应 用接收用户界面信息。用户界面信息对应于具有由应用的特定于应用的模块 定义的一个或多个维度的一个或多个所显示的用户界面元素。该方法还包括 接收指向一个或多个所显示的用户界面元素的输入;及在独立于应用的模块 处,基于该输入的量值和由特定于应用的模块定义的所述一个或多个维度来 确定要生成的一个或多个触觉输出;以及使用所述一个或多个触觉输出发生 器,生成所确定的一个或多个触觉输出。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收输入的一个或多个输入设备单元;被配置为生成一 个或多个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、所 述一个或多个输入设备单元和所述一个或多个触觉输出发生器单元耦接的处 理单元。处理单元被配置为使能在显示单元上显示第一软件应用的用户界面。 用户界面包括已为其分配由独立于应用的模块提供的多个用户交互模型中的 用户交互模型的多个元素,所述多个元素包括已为其分配第一用户交互模型 的第一元素,所述多个元素具有由第一软件应用的特定于应用的模块提供的 内容。第一用户交互模型定义用户界面如何对指向用户界面的第一元素的输 入作出响应。处理单元还被配置为在使能显示用户界面时,经由所述一个或 多个输入设备单元检测指向用户界面的第一元素的输入;以及响应于检测到 该输入:基于该输入的特征来更新显示单元上的用户界面;根据确定该输入 符合第一用户交互模型所指定的触觉输出标准,使能生成与该输入相对应的 第一触觉输出;以及根据确定该输入不符合第一用户交互模型所指定的触觉 输出标准,放弃使能生成第一触觉输出。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、触敏表面 单元和所述一个或多个触觉输出发生器单元耦接的处理单元。处理单元被配 置为:使能在显示单元上显示用户界面;以及检测触发与触觉输出相关联的 第一用户界面事件的第一条件的发生。生成第一用户界面事件包括使能显示 用户界面的一个或多个变化。该设备将不能够在相应时间量内生成与第一用 户界面事件相关联的触觉输出。处理单元还被配置为响应于检测到第一条件 的发生,根据确定第一用户界面事件对应于第一用户界面事件类别,使能生 成与第一用户界面事件相关联的触觉输出;将生成第一用户界面事件延迟至 少相应时间量;以及在将生成第一用户界面事件延迟至少相应时间量之后, 使能显示用户界面的所述一个或多个变化。用户界面的所述一个或多个变化 的显示和与第一用户界面事件相关联的触觉输出的生成同步。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、触敏表面 单元和所述一个或多个触觉输出发生器单元耦接的处理单元。处理单元被配 置为:在所述一个或多个触觉输出发生器单元处于低功率状态时,接收用户 交互已开始的指示。用户交互的相应部分与触觉输出相关联。低功率状态是 以第一延迟量生成触觉输出的状态。处理单元还被配置为响应于接收到与触 觉输出相关联的用户交互已开始的指示,根据确定该指示符合触觉输出发生 器准备标准,在第一时间将所述一个或多个触觉输出发生器单元设定为低延 迟状态。低延迟状态是以低于第一延迟量的第二延迟量生成触觉输出的状态。 处理单元被进一步配置为在将所述一个或多个触觉输出发生器单元设定为低 延迟状态之后:根据确定在经过自第一时间起的预定义时间量之前用户交互 已达到与触觉输出相关联的用户交互的相应部分并且所述一个或多个触觉输 出发生器单元仍处于低延迟状态,使能使用所述一个或多个触觉输出发生器 单元以第二延迟量生成触觉输出;以及根据确定在至少自第一时间起的预定 义时间量内尚未生成触觉输出,使所述一个或多个触觉输出发生器单元从低 延迟状态转变为低功率状态。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、所述一个 或多个输入设备单元和所述一个或多个触觉输出发生器单元耦接的处理单 元。处理单元被配置为在通过独立于应用的模块将第一类型的事件与第一触 觉输出相关联,并且将不同于第一类型的事件的第二类型的事件与不同于第 一触觉输出的第二触觉输出相关联时:从第一应用接收第一信息;以及响应 于从第一应用接收到第一信息,使能生成对第一信息的响应,包括:根据确 定第一信息对应于第一类型的应用事件,使能使用所述一个或多个触觉输出 发生器单元生成第一触觉输出;以及根据确定第一信息对应于不同于第一类 型的第二类型的应用事件,使能使用所述一个或多个触觉输出发生器单元生 成不同于第一触觉输出的第二触觉输出。处理单元还被配置为在使能生成对 第一信息的响应之后,从不同于第一应用的第二应用接收第二信息;以及响 应于从第二应用接收到第二信息,使能生成对第二信息的响应,包括:根据确定第二信息对应于第一类型的应用事件,使能使用所述一个或多个触觉输 出发生器单元生成第一触觉输出;以及根据确定第二信息对应于第二类型的 应用事件,使能使用所述一个或多个触觉输出发生器单元生成第二触觉输出。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、触敏表面 单元和所述一个或多个触觉输出发生器单元耦接的处理单元。处理单元被配 置为在独立于应用的模块处,从与第一应用相关联的特定于应用的模块接收 有关指向第一应用的用户界面的输入的信息。响应于检测到该输入而在第一 应用的用户界面中执行的操作与特定于应用的模块所指定的触觉输出模式相 关联。有关该输入的信息包括指示响应于检测到该输入而在用户界面中执行 的操作的量值的信息。处理单元还被配置为响应于接收到有关指向第一应用 的用户界面的输入的信息,使能经由所述一个或多个触觉输出发生器单元生 成与在第一应用的用户界面中执行的操作相对应的触觉输出。触觉输出具有 特定于应用的模块所指定的触觉输出模式。触觉输出具有根据响应于检测到 该输入而在第一应用的用户界面中执行的操作的量值来确定的幅度。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、触敏表面 单元和所述一个或多个触觉输出发生器单元耦接的处理单元。处理单元被配 置为:使能在显示单元上显示用户界面;在使能在显示单元上显示用户界面 时且在所述一个或多个触觉输出发生器单元处于低功率状态时,检测经由触 敏表面单元进行的第一用户交互;响应于检测到第一用户交互,将所述一个 或多个触觉输出发生器单元设定为低延迟状态;在将所述一个或多个触觉输 出发生器单元设定为低延迟状态之后,检测作为与第一用户交互相同的用户 交互序列的一部分的第二用户交互;以及响应于检测到第二用户交互,使能 生成对应于第二用户交互的触觉输出。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、触敏表面 单元和所述一个或多个触觉输出发生器单元耦接的处理单元。处理单元被配 置为接收对第一用户界面操作的第一请求。第一用户界面操作是与第一触觉 输出相关联的相应用户界面元素中第一类型的变化。处理单元还被配置为响 应于接收到第一请求:执行第一用户界面操作并使能生成第一触觉输出;以 及在执行第一用户界面操作之后,接收对与第二触觉输出相关联的第二用户 界面操作的第二请求。处理单元被进一步配置为响应于接收到第二请求,根 据确定对第二用户界面操作的第二请求包括对与第二触觉输出相关联的用户 界面中第一类型的变化的实例的请求:确定从与生成触觉输出的相应用户界 面元素中第一类型的变化的最近在先实例相对应的时间点,到与第二请求所 要求的相应用户界面元素中第一类型的变化相对应的时间点的时间间隔;根 据确定该时间间隔小于预定义时间段,执行第二用户界面操作而不使能生成 第二触觉输出;以及根据确定该时间间隔大于预定义时间段,执行第二用户 界面操作并使能生成第二触觉输出。
根据一些实施方案,电子设备包括被配置为显示一个或多个用户界面的 显示单元;被配置为接收触摸输入的触敏表面单元;被配置为生成一个或多 个触觉输出的一个或多个触觉输出发生器单元;以及与显示单元、触敏表面 单元和所述一个或多个触觉输出发生器单元耦接的处理单元。处理单元被配 置为在独立于应用的模块处,从应用接收用户界面信息。用户界面信息对应 于具有由应用的特定于应用的模块定义的一个或多个维度的一个或多个所显 示的用户界面元素。处理单元还被配置为接收指向一个或多个所显示的用户 界面元素的输入;在独立于应用的模块处,基于该输入的量值和由特定于应 用的模块定义的所述一个或多个维度来确定要生成的一个或多个触觉输出; 以及使能使用所述一个或多个触觉输出发生器单元生成所确定的一个或多个 触觉输出。
根据一些实施方案,电子设备包括显示器、触敏表面、用于检测与触敏 表面的接触强度的任选一个或多个传感器、一个或多个处理器、存储器以及 一个或多个程序;所述一个或多个程序存储在存储器中并被配置为由所述一 个或多个处理器执行,并且所述一个或多个程序包括用于执行或促使执行上 述任何方法的操作的指令。根据一些实施方案,计算机可读存储介质在其中 存储有指令,所述指令当由具有显示器、触敏表面以及用于检测与触敏表面 的接触强度的任选一个或多个传感器的电子设备执行时,使得该设备执行或 促使执行上述任何方法的操作。根据一些实施方案,具有显示器、触敏表面、 用于检测与触敏表面的接触强度的任选一个或多个传感器、存储器、以及用 于执行存储于存储器中的一个或多个程序的一个或多个处理器的电子设备上 的图形用户界面包括上述任何方法中所显示的一个或多个元素,该一个或多 个元素响应于输入进行更新,如上述任何方法中所描述的。根据一些实施方 案,电子设备包括:显示器、触敏表面、以及用于检测与触敏表面的接触强 度的任选一个或多个传感器;以及用于执行或促使执行上述任何方法的操作的装置。根据一些实施方案,用于在具有显示器和触敏表面、用于检测与触 敏表面的接触强度的任选一个或多个传感器的电子设备中使用的信息处理装 置包括用于执行或促使执行上述任何方法的操作的装置。
因此,具有显示器、触敏表面和用于检测与触敏表面的接触强度的任选 一个或多个传感器的电子设备被提供有更快、更有效的方法和界面以用于提 供触觉输出,从而增大此类设备的效用、效率和用户满意度。此类方法和界 面可补充或替换用于提供触觉输出的常规方法。
附图说明
为了更好地理解本发明的各种所描述的实施方案,应该结合以下附图参 考下面的具体实施方式,在附图中,类似的附图标号在所有附图中指示对应 的部分。
图1A是示出根据一些实施方案的具有触敏显示器的便携式多功能设备 的框图。
图1B是示出根据一些实施方案的用于事件处理的示例性部件的框图。
图1C是示出根据一些实施方案的触觉输出模块的框图。
图1D-1E是示出根据一些实施方案的独立于应用的软件模块的框图。
图2A示出根据一些实施方案的具有触摸屏的便携式多功能设备。
图2B-2C示出根据一些实施方案的强度敏感输入设备的分解图。
图3是根据一些实施方案的具有显示器和触敏表面的示例性多功能设备 的框图。
图4A示出根据一些实施方案的便携式多功能设备上的应用菜单的示例 性用户界面。
图4B示出根据一些实施方案的用于具有与显示器分开的触敏表面的多 功能设备的示例性用户界面。
图4C-4E示出根据一些实施方案的动态强度阈值的示例。
图4F-4G示出根据一些实施方案的一组样本触觉输出模式。
图5A-5KKK示出根据一些实施方案的示例性用户界面和触觉输出。
图6A-6D是示出根据一些实施方案的基于用户交互模型来生成触觉输 出的方法的流程图。
图7是根据一些实施方案的电子设备的功能框图。
图8A-8D是示出根据一些实施方案的使触觉输出和用户界面变化同步 的方法的流程图。
图9是根据一些实施方案的电子设备的功能框图。
图10A-10D是示出根据一些实施方案的设置触觉输出发生器的功率/延 迟状态的方法的流程图。
图11是根据一些实施方案的电子设备的功能框图。
图12A-12D是示出根据一些实施方案的为多个应用生成一致触觉输出 的方法的流程图。
图13是根据一些实施方案的电子设备的功能框图。
图14A-14B是示出根据一些实施方案的基于来自特定于应用的模块的信 息来生成触觉输出的方法的流程图。
图15是根据一些实施方案的电子设备的功能框图。
图16A-16D是示出根据一些实施方案的基于用户交互事件来设定触觉 输出发生器的功率/延迟状态的方法的流程图。
图17是根据一些实施方案的电子设备的功能框图。
图18A-18C是示出根据一些实施方案的基于与前一触觉输出生成的时间 间隔来有条件地生成触觉输出的方法的流程图。
图19是根据一些实施方案的电子设备的功能框图。
图20A-20B是示出根据一些实施方案的基于输入的量值和用户界面元素 的维度来生成触觉输出的方法的流程图。
图21是根据一些实施方案的电子设备的功能框图。
图22A是示例性反馈架构的图表。
图22B示出日期选取器的示例。
图22C是示出示例性系统的概览的图表。
具体实施方式
许多电子设备具有图形用户界面,这些图形用户界面允许响应于某些触 摸输入而对所显示的用户界面对象进行某些操纵。然而,各种软件应用可被 配置为以不一致的方式(例如,提供不同触觉反馈)对相同输入作出响应, 这使用户更难获知如何与不同软件应用交互和/或特定触觉反馈指示的是什 么。所公开的实施方案通过提供用于提供触觉反馈(和/或触觉输出)的通用 框架而解决了这些限制和缺点。由于用于提供触觉输出的指令提供于电子设 备中(例如,操作系统中),软件应用可开发得更快且制得更小,从而改善 电子设备上存储和执行此类软件应用的效率。此外,各种软件应用使用通用 框架以一致方式(例如,通过提供一致触觉反馈)对相同输入作出响应,从 而改善此类电子设备的用户体验。对于电池驱动设备,所公开的方法和设备 可节省电池电量并且增加两次电池充电之间的时间。此外,软件应用可订阅 通用框架的不同特征,从而允许软件应用定制对输入的响应而不丧失一致性 及通用框架的高级特征。
下面,图1A-1E、图2A-2C和图3提供对示例性设备的描述。图4A-4B 和图5A-5KKK示出示例性用户界面和相关联的触觉输出。图6A-6D示出基 于用户交互模型来生成触觉输出的方法的流程图。图8A-8D示出使触觉输出 和用户界面变化同步的方法的流程图。图10A-10D示出设定触觉输出发生器 的功率/延迟状态的方法的流程图。图12A-12D示出为多个应用生成一致触觉 输出的方法的流程图。图14A-14B示出基于来自特定于应用的模块的信息来 生成触觉输出的方法的流程图。图16A-16D示出基于用户交互事件来设定触 觉输出发生器的功率/延迟状态的方法的流程图。图18A-18C示出基于与前一 触觉输出生成的时间间隔来有条件地生成触觉输出的方法的流程图。图 20A-20B示出基于输入的量值和用户界面元素的维度来生成触觉输出的方法 的流程图。图5A-5KKK中的用户界面用于说明图6A-6D、图8A-8D、图10A-10D、图12A-12D、图14A-14B、图16A-16D、图18A-18C和图20A-20B 中的过程。
示例性设备
现在将详细地参考实施方案,这些实施方案的示例在附图中示出。下面 的详细描述中示出许多具体细节,以便提供对各种所描述的实施方案的充分 理解。但是,对本领域的普通技术人员将显而易见的是,各种所描述的实施 方案可以在没有这些具体细节的情况下被实践。在其他情况下,没有详细地 描述众所周知的方法、过程、部件、电路和网络,从而不会不必要地使实施 方案的方面晦涩难懂。
还将理解的是,虽然在一些情况下,术语“第一”、“第二”等在本文 中用于描述各种元件,但是这些元件不应受到这些术语限制。这些术语只是 用于将一个元件与另一元件区分开。例如,第一接触可被命名为第二接触, 并且类似地,第二接触可被命名为第一接触,而不脱离各种所描述的实施方 案的范围。第一触点和第二触点均为触点,但它们不是同一个触点,除非上 下文另外明确指示。
在本文中对各种所述实施方案的描述中所使用的术语只是为了描述特 定实施方案的目的,而并非旨在进行限制。如在对各种所述实施方案中的描 述和所附权利要求书中所使用的那样,单数形式“一个”(“a”,“an”) 和“该”旨在也包括复数形式,除非上下文另外明确地指示。还应当理解, 本文中所使用的术语“和/或”是指并且涵盖相关联地列出的项目中的一个或 多个项目的任何和全部可能的组合。还应当理解,术语“包括”(“includes”、“including”、“comprises”和/或“comprising”)在本说明书中使用时是指 定存在所陈述的特征、整数、步骤、操作、元件和/或部件,但是并不排除存 在或添加一个或多个其他特征、整数、步骤、操作、元件、部件和/或其分组。
如本文中所使用,根据上下文,术语“如果”任选地被解释为意思是 “当……时”(“when”或“upon”)或“响应于确定”或“响应于检测到”。 类似地,根据上下文,短语“如果确定……”或“如果检测到[所陈述的条件 或事件]”任选地被解释为是指“在确定……时”或“响应于确定……”或“在 检测到[所陈述的条件或事件]时”或“响应于检测到[所陈述的条件或事件]”。
本文描述了电子设备、此类设备的用户界面和使用此类设备的相关联的 过程的实施方案。在一些实施方案中,该设备是还包含其他功能诸如PDA和 /或音乐播放器功能的便携式通信设备,诸如移动电话。便携式多功能设备的 示例性实施方案包括但不限于来自Apple Inc.(Cupertino,California)的 iPod和设备。任选地使用其他便携式电子设备,诸如 具有触敏表面(例如,触摸屏显示器和/或触摸板)的膝上型电脑或平板电脑。 还应当理解的是,在一些实施方案中,该设备并非便携式通信设备,而是具有触敏表面(例如,触摸屏显示器和/或触摸板)的台式计算机。
在下面的讨论中,描述了一种包括显示器和触敏表面的电子设备。然而, 应当理解,该电子设备任选地包括一个或多个其他物理用户接口设备,诸如 物理键盘、鼠标和/或操纵杆。
所述设备通常支持各种应用,诸如以下中的一者或多者:记事本制作应 用、绘图应用、呈现应用、文字处理应用、网站创建应用、盘编辑应用、电 子表格应用、游戏应用、电话应用、视频会议应用、电子邮件应用、即时消 息应用、健身支持应用、照片管理应用、数字相机应用、数字视频摄像机应 用、网页浏览应用、数字音乐播放器应用和/或数字视频播放器应用。
在设备上执行的各种应用任选地使用至少一个通用物理用户接口设备 诸如触敏表面。触敏表面的一种或多种功能以及显示在设备上的对应信息任 选地从一种应用调整和/或变化至下一种应用和/或在相应应用内被调整和/或 变化。这样,设备的共用物理架构(诸如触敏表面)任选地利用对于用户而 言直观且清楚的用户界面来支持各种应用。
现在关注具有触敏显示器的便携式设备的实施方案。图1A是示出根据 一些实施方案的具有触敏显示器系统112的便携式多功能设备100的框图。 触敏显示器系统112有时为了方便被叫做“触摸屏”,并且有时被简称为触 敏显示器。设备100包括存储器102(其任选地包括一个或多个计算机可读 存储介质)、存储器控制器122、一个或多个处理单元(CPU)120、外围设备 接口118、射频电路108、音频电路110、扬声器111、麦克风113、输入/输出(I/O)子系统106、其他输入或控制设备116和外部端口124。设备100任选 地包括一个或多个光学传感器164。设备100任选地包括用于检测设备100 (例如,触敏表面,诸如设备100的触敏显示器系统112)上的接触的强度 的一个或多个强度传感器165。设备100任选地包括用于在设备100上生成 触觉输出的一个或多个触觉输出发生器167(例如在触敏表面诸如设备100 的触敏显示系统112或设备300的触控板355上生成触觉输出)。这些部件 任选地通过一条或多条通信总线或信号线103通信。
如本说明书和权利要求书中所使用的,术语“触觉输出”是指将由用户 利用用户的触感检测到的设备相对于设备的先前位置的物理位移、设备的部 件(例如,触敏表面)相对于设备的另一个部件(例如,外壳)的物理位移、 或部件相对于设备的质心的位移。例如,在设备或设备的部件与用户对触摸 敏感的表面(例如,手指、手掌或用户手部的其他部分)接触的情况下,通 过物理位移生成的触觉输出将由用户解释为触感,该触感与设备或设备的部 件的物理特征的所感知的变化对应。例如,触敏表面(例如,触敏显示器或 触控板)的移动任选地由用户解释为对物理致动按钮的“按下点击”或“松 开点击”。在一些情况下,用户将感觉到触感,诸如“按下点击”或“松开 点击”,即使在通过用户的移动而物理地被按压(例如,被移位)的与触敏 表面相关联的物理致动按钮没有移动时。又如,即使在触敏表面的光滑度无 变化时,触敏表面的移动也会任选地由用户解释或感测为触敏表面的“粗糙度”。虽然用户对触摸的此类解释将受到用户的个体化感官知觉的限制,但 是对触摸的许多感官知觉是大多数用户共有的。因此,当触觉输出被描述为 对应于用户的特定感官知觉(例如,“按下点击”、“松开点击”、“粗糙 度”)时,除非另外陈述,否则所生成的触觉输出对应于设备或其部件的物 理位移,该物理位移将会生成典型(或普通)用户的所述感官知觉。使用触 觉输出向用户提供触觉反馈增强了设备的可操作性并且使得用户设备界面更 有效(例如,通过帮助用户提供正确输入并且减少用户在操作设备/与设备交 互时出错),另外,由于用户能够更快且更有效地使用设备,这减少了功率 用量并且改善了设备的电池寿命。
在一些实施方案中,触觉输出模式指定了触觉输出的特征,诸如触觉输 出的幅度、触觉输出的移动波形的形状、触觉输出的频率和/或触觉输出的持 续时间。
当具有不同触觉输出模式的触觉输出由设备生成(例如,经由使可移动 块移动以生成触觉输出的一个或多个触觉输出发生器)时,触觉输出可在持 握或触摸该设备的用户中引发不同触感。虽然用户的感觉基于用户对触觉输 出的感知,但大多数用户将能够识别设备所生成的触觉输出的波形、频率和 幅度的变化。因此,可调节波形、频率和幅度以向用户指示已执行不同操作。 这样,具有被设计、选择和/或建造为模拟给定环境(例如,包括图形特征和 对象的用户界面、具有虚拟边界和虚拟对象的模拟物理环境、具有物理边界 和物理对象的真实物理环境和/或上述各项的任何组合)中的对象的特征(例 如,尺寸、材料、重量、刚度、光滑度等);行为(例如,振荡、位移、加 速度、旋转、膨胀等);和/或交互(例如,碰撞、粘附、排斥、吸引、摩擦 等)的触觉输出模式的触觉输出,在一些情况下,将向用户提供有用反馈, 从而减少输入错误并提高用户对设备的操作的效率。另外,任选地生成触觉输出以对应于与模拟物理特征无关的反馈,诸如输入阈值或对象的选择。此 类触觉输出在一些情况下将向用户提供有用反馈,从而减少输入错误并提高 用户对设备的操作的效率。
在一些实施方案中,具有合适触觉输出模式的触觉输出用作用户界面中 或设备后台发生感兴趣事件的提示。感兴趣事件的示例包括设置在设备上或 用户界面中的示能表示(例如,真实或虚拟按钮、或拨动开关)的激活、所 请求的操作的成功或失败、达到或跨越用户界面中的边界、进入新状态、对 象之间输入焦点的切换、新模式的激活、达到或跨越输入阈值、输入或手势 类型的检测或识别等。在一些实施方案中,提供触觉输出以用作除非及时检 测到重定向或中断输入否则将发生的迫近事件或结果的警告或警示。触觉输 出还用于其他上下文中以充实用户体验,改善具有视觉或运动障碍或其他可 访问性需求的用户对设备的可访问性,和/或改善用户界面和/或设备的效率和 功能性。触觉输出任选地伴有音频输出和/或可见用户界面变化,这在用户与 用户界面和/或设备交互时进一步增强用户的体验,并有利于更好地传达有关 用户界面和/或设备的状态的信息,并且减少输入错误并提高用户对设备的操 作的效率。
图4F提供了一组样本触觉输出模式,它们可按原样或通过一种或多种 变换(例如,调制、放大、截断等)单独地或结合地使用,以便在各种情景 中针对各种目的(诸如上文提及的那些以及相对于本文所讨论的用户界面和 方法所述的那些)产生合适的触觉反馈。触觉输出选项板的该示例示出了可 如何使用一组三个波形和八个频率来产生触觉输出模式的阵列。除了该图中 所示的触觉输出模式之外,还任选地通过改变触觉输出模式的增益值来调节 这些触觉输出模式各自的幅度,如图所示,例如对于图4G中的全震动(FullTap)80Hz、全震动200Hz、小震动(MiniTap)80Hz、小震动200Hz、微震动(MicroTap) 80Hz和微震动200Hz而言,它们各自以1.0、0.75、0.5和0.25增益值的变型 示出。如图4G所示,改变触觉输出模式的增益值会改变模式的幅度,而不 会改变模式的频率或改变波形的形状。在一些实施方案中,改变触觉输出模 式的频率也会得到较低的幅度,因为一些触觉输出发生器受到可向可移动块 施加多大力的限制,从而可移动块的较高频率移动受限于较低幅度,以确保 产生波形所需的加速度不需要超出触觉输出发生器操作力范围的力(例如, 230Hz、270Hz和300Hz下的全震动的峰值幅度低于80Hz、100Hz、125Hz 和200Hz下的全震动的幅度)。
在图4F中,每列示出了具有特定波形的触觉输出模式。触觉输出模式 的波形表示相对于中立位置(例如,x零)的物理位移随可移动块为生成具有 该触觉输出模式的触觉输出所经历的时间而变化的模式。例如,图4F左列中 所示的第一组触觉输出模式(例如,“全震动”的触觉输出模式)各自具有 包括含两个完整周期的振荡(例如,在中立位置中开始和结束并跨越中立位 置三次的振荡)的波形。图4F中间列中所示的第二组触觉输出模式(例如, “小震动”的触觉输出模式)各自具有包括含一个完整周期的振荡(例如, 在中立位置中开始和结束并跨越中立位置一次的振荡)的波形。图4F右列中 所示的第三组触觉输出模式(例如,“微震动”的触觉输出模式)各自具有 包括含一半完整周期的振荡(例如,在中立位置中开始和结束且不跨越中立 位置的振荡)的波形。触觉输出模式的波形还包括开始缓冲和结束缓冲,它 们表示在触觉输出开始和结束时可移动块的逐渐加速和减速。图4F-4G所示 的示例性波形包括x最小和x最大值,它们表示可移动块的最大和最小移动范围。 对于具有较大可移动块的较大电子设备而言,可存在可移动块的较大或较小 的最小和最大移动范围。图4F-4G所示的示例描述了可移动块在1个维度中 的移动,但是类似原理也适用于可移动块在两个或三个维度中的移动。
如图4F所示,每个触觉输出模式还具有对应的特征频率,其会影响用 户从具有该特征频率的触觉输出所感觉到的触感的“强度(pitch)”。对于连 续触觉输出而言,特征频率表示触觉输出发生器的可移动块在给定时间段内 完成的周期数(例如,每秒的周期数)。对于离散触觉输出而言,生成离散 输出信号(例如,具有0.5、1或2个周期),并且特征频率值指定可移动块 需要移动多快才能生成具有该特征频率的触觉输出。如图4F所示,对于每种 类型的触觉输出(例如,如由相应波形定义,诸如全震动、小震动或微震动) 而言,较高频率值对应于可移动块的一个或多个较快移动,因此一般对应于 完成触觉输出的较短时间(例如,包括完成离散触觉输出所需周期数的时间, 加上开始和结束缓冲时间)。例如,特征频率为80Hz的全震动需要比特征 频率为100Hz的全震动更长的时间完成(例如,图4F中35.4ms对28.3ms)。 此外,对于给定频率而言,在相应频率下其波形中有更多周期的触觉输出需 要比在相同相应频率下其波形中有更少周期的触觉输出更长的时间完成。例 如,150Hz下的全震动需要比150Hz下的小震动更长的时间完成(例如,19.4ms 对12.8ms),并且150Hz下的小震动需要比150Hz下的微震动更长的时间完 成(例如,12.8ms对9.4ms)。然而,对于具有不同频率的触觉输出模式而 言,该法则可能不适用(例如,具有更多周期但更高频率的触觉输出可能需 要比具有更少周期但更低频率的触觉输出更短的时间量完成,反之亦然)。 例如,在300Hz下,全震动需要与小震动一样长的时间(例如,9.9ms)。
如图4F所示,触觉输出模式还具有特征幅度,其影响触觉信号中所含 的能量的量,或用户可通过具有该特征幅度的触觉输出所感觉到的触感的“强 度”。在一些实施方案中,触觉输出模式的特征幅度是指表示在生成触觉输 出时可移动块离中立位置的最大位移的绝对值或归一化值。在一些实施方案 中,触觉输出模式的特征幅度可根据各种条件(例如,基于用户界面上下文 和行为而定制)和/或预配置度量(例如,基于输入的度量和/或基于用户界面 的度量),例如按固定的或动态确定的增益因数(例如,0与1之间的值) 来调节。在一些实施方案中,基于输入的度量(例如,强度变化度量或输入 速度度量)在触发触觉输出生成的输入期间测量输入的特征(例如,按压输 入中的接触的特征强度的变化速率,或跨越触敏表面的接触的移动速率)。 在一些实施方案中,基于用户界面的度量(例如,跨边界速度度量)在触发 触觉输出生成的用户界面变化期间测量用户界面元素的特征(例如,跨越用 户界面中隐藏或可见边界的元素的移动速度)。在一些实施方案中,触觉输 出模式的特征幅度可由“包络”来调制,并且相邻周期的峰值可具有不同幅 度,其中上文所示的波形之一进一步通过乘以包络参数来调节,该包络参数 随时间推移而变化(例如,从0到1),从而在生成触觉输出时随时间推移 而逐渐调节触觉输出的部分的幅度。
虽然出于示例性目的而在图4F的样本触觉输出模式中表示了具体频率、 幅度和波形,但可出于类似目的而使用具有其他频率、幅度和波形的触觉输 出模式。例如,可使用具有0.5至4个周期的波形。也可使用在60Hz-400Hz 范围内的其他频率。表1提供了特定触觉反馈行为、配置的示例及其使用的 示例。
表1
上表1所示的示例旨在说明可为不同输入和事件生成触觉输出的一系列 情况。表1不应被当作是设备以所指示的触觉输出对每个所列输入或事件作 出响应的要求。相反,表1旨在说明触觉输出如何变化和/或对于不同输入和 /或事件是类似的(例如,基于触觉输出模式、频率、增益等)。例如,表1 示出了“成功事件”触觉输出如何有别于“失败事件”触觉输出,以及重定 目标触觉输出如何不同于冲击触觉输出。
应当理解,设备100仅是便携式多功能设备的一个示例,并且设备100 任选地具有比所示出的更多或更少的部件,任选地组合两个或更多个部件, 或者任选地具有这些部件的不同配置或布置。图1A中所示的各种部件在硬 件、软件、固件或它们的任何组合(包括一个或多个信号处理和/或专用集成 电路)中实施。
存储器102任选地包括高速随机存取存储器,并且还任选地包括非易失 性存储器,诸如一个或多个磁盘存储设备、闪存存储器设备、或其他非易失 性固态存储器设备。设备100的其他部件(诸如一个或多个CPU 120和外围 设备接口118)对存储器102的访问任选地由存储器控制器122来控制。
外围设备接口118可被用来将设备的输入和输出外围设备耦接到一个或 多个CPU120和存储器102。一个或多个处理器120运行或执行存储在存储 器102中的各种软件程序和/或指令集以执行设备100的各种功能并处理数 据。
在一些实施方案中,外围设备接口118、一个或多个CPU 120和存储器 控制器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)(例如,IEEE 802.11a、IEEE 802.11ac、IEEE 802.11ax、IEEE 802.11b、IEEE 802.11g和/或IEEE 802.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还包括耳麦 插孔(例如,图2A中的212)。耳麦插孔提供音频电路110和可移除的音频 输入/输出外围设备之间的接口,该可移除的音频输入/输出外围设备诸如仅输 出的耳机或者具有输出(例如,单耳耳机或双耳耳机)和输入(例如,麦克 风)两者的耳麦。
I/O子系统106将设备100上的输入/输出外围设备诸如触敏显示器系统 112和其他输入或控制设备116与外围设备接口118耦接。I/O子系统106任 选地包括显示控制器156、光学传感器控制器158、强度传感器控制器159、 触觉反馈控制器161和用于其他输入或控制设备的一个或多个输入控制器 160。所述一个或多个输入控制器160从其他输入或控制设备116接收电信号 /发送电信号到其他输入或控制设备116。其他输入或控制设备116任选地包 括物理按钮(例如,下压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、 点击轮等等。在一些另选实施方案中,一个或多个输入控制器160任选地耦 接至以下各项中的任一者(或不耦接至以下各项中的任一者):键盘、红外 线端口、USB端口、触笔、和/或指针设备诸如鼠标。所述一个或多个按钮(例 如,图2A中的208)任选地包括用于扬声器111和/或麦克风113的音量控 制的向上/向下按钮。所述一个或多个按钮任选地包括下压按钮(例如,图2A 中的206)。
触敏显示器系统112提供设备与用户之间的输入接口和输出接口。显示 控制器156从触敏显示器系统112接收电信号和/或将电信号发送至触敏显示 器系统112。触敏显示器系统112向用户显示视觉输出。视觉输出任选地包 括图形、文本、图标、视频和它们的任何组合(统称为“图形”)。在一些 实施方案中,一些视觉输出或全部的视觉输出对应于用户界面对象。如本文 所用,术语“示能表示”是指用户交互式图形用户界面对象(例如,被配置 为对指向图形用户界面对象的输入作出响应的图形用户界面对象)。用户交 互式图形用户界面对象的示例包括但不限于按钮、滑块、图标、可选菜单项、 开关、超链接或其他用户界面控制。
触敏显示器系统112具有基于触觉和/或触感接触来接受来自用户的输 入的触敏表面、传感器或传感器组。触敏显示器系统112和显示控制器156 (与存储器102中的任何相关联的模块和/或指令集一起)检测触敏显示器系 统112上的接触(和该接触的任何移动或中断),并且将所检测到的接触转 换为与被显示在触敏显示器系统112上的用户界面对象(例如,一个或多个 软按键、图标、网页或图像)的交互。在一些实施方案中,触敏显示器系统 112和用户之间的接触点对应于用户的手指或触笔。
触敏显示器系统112任选地使用LCD(液晶显示器)技术、LPD(发光 聚合物显示器)技术、或LED(发光二极管)技术,但是在其他实施方案中 使用其他显示技术。触敏显示器系统112和显示控制器156任选地使用现在 已知的或以后将开发出的多种触摸感测技术中的任何技术以及其他接近传感 器阵列或用于确定与触敏显示器系统112接触的一个或多个点的其他元件来 检测接触及其任何移动或中断,所述多种触摸感测技术包括但不限于电容性 的、电阻性的、红外线的、和表面声波技术。在一些实施方案中,使用投射 式互电容感测技术,诸如从Apple Inc.(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、OS X、 WINDOWS、或嵌入式操作系统诸如VxWorks)包括用于控制和管理一般系 统任务(例如,存储器管理、存储设备控制、功率管理等)的各种软件部件 和/或驱动器,并且有利于各种硬件和软件部件之间的通信。
通信模块128促进通过一个或多个外部端口124来与其他设备进行通 信,并且还包括用于处理由RF电路108和/或外部端口124所接收的数据的 各种软件部件。外部端口124(例如,通用串行总线(USB)、火线等)适于直 接耦接到其他设备或者间接地通过网络(例如,互联网、无线LAN等)进行 耦接。在一些实施方案中,外部端口是与Apple Inc.(Cupertino,California)的 一些iPod和iPod设备中所使用的30针连接器相同或类似 和/或兼容的多针(例如,30针)连接器。在一些实施方案中,外部端口是与Apple Inc.(Cupertino,California)的一些iPod和iPod设备中 所使用的Lightning连接器相同或类似和/或兼容的Lightning连接器。
接触/运动模块130任选地检测与触敏显示器系统112(结合显示控制器 156)和其他触敏设备(例如,触控板或物理点击轮)的接触。接触/运动模 块130包括用于执行与(例如手指或触笔)接触检测相关的各种操作的各种 软件部件,诸如确定是否已发生接触(例如,检测手指按下事件)、确定接 触的强度(例如,接触的力或压力,或者接触的力或压力的替代物)、确定 是否存在接触的移动并跟踪在触敏表面上的移动(例如,检测一个或多个手指拖动事件)、以及确定接触是否已停止(例如,检测手指抬起事件或者接 触断开)。接触/运动模块130从触敏表面接收接触数据。确定接触点的移动 任选地包括确定接触点的速率(量值)、速度(量值和方向)和/或加速度(量 值和/或方向的改变),所述接触点的移动由一系列接触数据表示。这些操作 任选地被应用于单点接触(例如,单指接触或触笔接触)或者多点同时接触 (例如,“多点触摸”/多指接触)。在一些实施方案中,接触/运动模块130 和显示控制器156检测触摸板上的接触。
接触/运动模块130任选地检测用户的手势输入。触敏表面上的不同手势 具有不同的接触模式(例如,所检测到的接触的不同运动、计时和/或强度)。 因此,任选地通过检测特定接触模式来检测手势。例如,检测单指轻击手势 包括检测手指按下事件,然后在与手指按下事件相同的位置(或基本上相同 的位置)处(例如,在图标位置处)检测手指抬起(抬离)事件。又如,在 触敏表面上检测手指轻扫手势包括检测手指按下事件、然后检测一个或多个 手指拖动事件以及随后检测手指抬起(抬离)事件。类似地,对于触笔而言, 任选地通过检测触笔的特定接触模式来检测轻击、轻扫、拖动和其他手势。
在一些实施方案中,检测单指轻击手势(例如,触敏显示器系统112上) 取决于检测手指按下事件与手指抬起事件之间的时间长度,但独立于检测手 指按下事件与手指抬起事件之间的手指接触的强度。在一些实施方案中,根 据确定手指按下事件与手指抬起事件之间的时间长度小于预先确定的值(例 如,小于0.1、0.2、0.3、0.4或0.5秒)来检测轻击手势,而独立于在轻击期 间手指接触的强度是否符合给定强度阈值(大于标称接触检测强度阈值), 诸如轻按压或深按压强度阈值。因此,单指轻击手势可满足被配置为即使在 接触的特征强度不满足给定强度阈值时也将符合的输入标准。为清楚起见, 轻击手势中的手指接触通常需要满足低于其就无法检测到接触的标称接触检 测强度阈值,以便检测手指按下事件。类似的分析适用于检测触笔所作的轻 击手势或其他接触。在设备被配置为检测悬停于触敏表面上方的手指或触笔 接触的情况下,标称接触检测强度阈值任选地不对应于手指或触笔与触敏表 面之间的物理接触。
相同概念以类似的方式适用于其他类型的手势。例如,任选地基于独立 于手势中所包括的接触强度的标准的满足,来检测轻扫手势、捏合手势、张 开手势和/或长按压手势(例如,触敏显示器系统112上)。例如,基于一个 或多个接触的移动量来检测轻扫手势;基于两个或更多个接触朝向彼此的移 动来检测捏合手势;基于两个或更多个接触远离彼此的移动来检测张开手势; 并且基于在小于移动阈值量的情况下触敏表面上的接触的持续时间来检测长 按压手势。这样,手势识别标准被配置为在手势中的接触具有低于相应强度阈值的强度时将符合的陈述,意指即使手势中的一个或多个接触未达到相应 强度阈值,手势识别标准也能够满足。然而,应当理解,该陈述并不将手势 识别标准排除在能在手势中的一个或多个接触达到或超过相应强度阈值的情 况下满足之外。例如,轻击手势被配置为在预定义时间段内检测到手指按下 和手指抬起事件的情况下检测,而不考虑接触在预定义时间段期间是高于还 是低于相应强度阈值,并且轻扫手势被配置为在接触移动大于预定义量值的 情况下检测,即便在接触移动结束时接触高于相应强度阈值。
接触强度阈值、持续时间阈值和移动阈值在一些情况下以多种不同的组 合进行组合,以便形成启发法以用于区分指向相同输入元件或区域的两个或 更多个不同手势,使得与相同输入元件的多个不同交互能够提供一组更丰富 的用户交互和响应。特定组手势识别标准被配置为在手势中的接触具有低于 相应强度阈值的强度时将符合的陈述,并不排除其他强度相关手势识别标准 的并行评估以识别其他手势,所述其他手势具有在手势包括强度高于相应强 度阈值的接触时符合的标准。例如,在一些情况下,第一手势的第一手势识 别标准(其被配置为在手势具有低于相应强度阈值的强度时将符合)与第二 手势的第二手势识别标准(其取决于达到相应强度阈值的手势)相竞争。在 此类竞争中,如果首先符合第二手势的第二手势识别标准,则手势任选地不 被识别为符合第一手势的第一手势识别标准。例如,如果在接触移动了预定 义移动量之前接触达到相应强度阈值,则检测到深按压手势而非轻扫手势。 相反,如果在接触达到相应强度阈值之前接触移动了预定义移动量,则检测 到轻扫手势而非深按压手势。即使在此类情况下,第一手势的第一手势识别 标准仍被配置为在手势中的接触具有低于相应强度的强度时将符合,因为如 果接触保持低于相应强度阈值直至手势结束(例如,具有未增加到高于相应 强度阈值的强度的接触的轻扫手势),则手势会被第一手势识别标准识别为 轻扫手势。这样,被配置为在接触的强度保持低于相应强度阈值时将符合的 特定手势识别标准将(A)在一些情况下忽略相对于强度阈值的接触的强度(例 如,对于轻击手势而言)和/或(B)在一些情况下仍然取决于相对于强度阈值的 接触的强度,从某种意义上讲,如果在特定手势识别标准识别对应于输入的 手势(例如,对于识别时与深按压手势相竞争的长按压手势而言)之前一组 竞争性的强度相关手势识别标准(例如,对于深按压手势而言)将输入识别 为对应于强度相关手势,则特定手势识别标准(例如,对于长按压手势而言) 将未达到。
图形模块132包括用于在触敏显示器系统112或其他显示器上呈现和显 示图形的各种已知软件部件,包括用于改变所显示的图形的视觉冲击(例如, 亮度、透明度、饱和度、对比度或其他视觉属性)的部件。如本文所用,术 语“图形”包括可被显示给用户的任何对象,包括但不限于文本、网页、图 标(诸如包括软键的用户界面对象)、数字图像、视频、动画等。
在一些实施方案中,图形模块132存储待使用的用于表示图形的数据。 每个图形任选地被分配有对应的代码。图形模块132从应用等接收指定待显 示的图形的一个或多个代码,在必要的情况下还接收坐标数据和其他图形属 性数据,然后生成屏幕图像数据,以输出至显示控制器156。
触觉反馈模块133包括用于生成指令的各种软件部件(例如,由触觉反 馈控制器161使用的指令),以便使用一个或多个触觉输出发生器167响应 于用户与设备100的交互而在设备100上的一个或多个位置处产生触觉输出。
任选地为图形模块132的部件的文本输入模块134提供用于在各种应用 (例如,联系人137、电子邮件140、IM 141、浏览器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、或IM 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、和音乐播 放器模块146,健身支持模块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(Apple Inc.的 商标)的功能性。
结合触敏显示器系统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显示的信息的用户界面 状态信息、用于使得用户能够返回到应用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中所使用的电话号码进行更 新,或者对视频播放器模块145中所使用的视频文件进行存储。在一些实施 方案中,对象更新器177创建和更新在应用136-1中使用的对象。例如,对 象更新器177创建新用户界面对象或更新用户界面对象的位置。GUI更新器 178更新GUI。例如,GUI更新器178准备显示信息并将其发送至图形模块132以用于在触敏显示器上显示。
在一些实施方案中,一个或多个事件处理程序190包括数据更新器176、 对象更新器177和GUI更新器178或者具有对数据更新器176、对象更新器 177和GUI更新器178的访问权限。在一些实施方案中,数据更新器176、 对象更新器177和GUI更新器178被包括在相应应用136-1或应用视图191 的单个模块中。在其他实施方案中,它们被包括在两个或更多个软件模块中。
应当理解,关于触敏显示器上的用户触摸的事件处理的上述讨论还适用 于利用输入设备来操作多功能设备100的其他形式的用户输入,并不是所有 用户输入都是在触摸屏上发起的。例如,任选地利用鼠标移动和鼠标按钮按 压,任选结合单次或多次键盘按压或保持;触控板上的接触移动,例如轻击、 拖动、滚动等;触笔输入;设备的移动;口头指令;检测到的眼睛运动;生 物特征输入;和/或它们的任意组合作为对应于子事件的输入,定义要识别的 事件。
图1C是示出根据一些实施方案的触觉输出模块的框图。在一些实施方 案中,I/O子系统106(例如,触觉反馈控制器161(图1A)和/或一个或多 个其他输入控制器160(图1A))包括图1C所示的至少一些示例性部件。 在一些实施方案中,外围设备接口118包括图1C所示的至少一些示例性部 件。
在一些实施方案中,触觉输出模块包括触觉反馈模块133。在一些实施 方案中,触觉反馈模块133聚合和组合来自电子设备上的软件应用的用户界 面反馈的触觉输出(例如,对用户输入作出响应的反馈,这些用户输入对应 于所显示的用户界面和警示及其他指示电子设备用户界面中的操作执行或事 件发生的通知)。触觉反馈模块133包括以下的一者或多者:波形模块123 (用于提供生成触觉输出所用的波形)、混合器125(用于混合波形,诸如 不同信道中的波形)、压缩器127(用于减小或压缩波形的动态范围)、低 通滤波器129(用于滤除波形中的高频信号分量)和热控制器131(用于根据 热状态来调节波形)。在一些实施方案中,触觉反馈模块133包括在触觉反 馈控制器161(图1A)中。在一些实施方案中,触觉反馈模块133的独立单 元(或触觉反馈模块133的独立实现)也包括在音频控制器(例如,音频电 路110,图1A)中并且用于生成音频信号。在一些实施方案中,单个触觉反 馈模块133用于生成音频信号并且生成触觉输出的波形。
在一些实施方案中,触觉反馈模块133还包括触发模块121(例如,确 定将要生成触觉输出并且引发用于生成对应触觉输出的过程的软件应用、操 作系统或其他软件模块)。在一些实施方案中,触发模块121生成触发信号 以用于引发波形的生成(例如,通过波形模块123)。例如,触发模块121 基于预设的定时标准来生成触发信号。在一些实施方案中,触发模块121从 触觉反馈模块133外部接收触发信号(例如,在一些实施方案中,触觉反馈 模块133从位于触觉反馈模块133外部的硬件输入处理模块146接收触发信 号)并且将触发信号中继到触觉反馈模块133内的其他部件(例如,波形模 块123)或软件应用,从而基于用户界面元素(例如,应用图标或应用内的 示能表示)或硬件输入设备(例如,home按钮)的激活来触发操作(例如, 使用触发模块121)。在一些实施方案中,触发模块121还接收触觉反馈生 成指令(例如,来自触觉反馈模块133,图1A和图3)。在一些实施方案中, 触发模块121响应于触觉反馈模块133(或触觉反馈模块133中的触发模块121)接收到触觉反馈指令(例如,来自触觉反馈模块133,图1A和图3) 而生成触发信号。
波形模块123接收触发信号(例如,来自触发模块121)作为输入,并 且响应于接收到触发信号,提供用于生成一个或多个触觉输出的波形(例如, 选自以下的波形:被指定供波形模块123使用的预定义的一组波形,诸如下 文参考图4F-4G更详细描述的波形)。
混合器125接收波形(例如,来自波形模块123)作为输入,并将波形 混合在一起。例如,当混合器125接收两种或更多种波形(例如,第一信道 中的第一波形以及第二信道中的与第一波形至少部分地重叠的第二波形)时, 混合器125输出对应于所述两种或更多种波形之和的组合波形。在一些实施 方案中,混合器125还修改所述两种或更多种波形的一种或多种波形,以相 比于所述两种或更多种波形的其余波形强调一种或多种特定波形(例如,通 过增加一种或多种特定波形的比例和/或减小其余波形的比例)。在一些情况 下,混合器125选择要从组合波形去除的一种或多种波形(例如,当已请求 由触觉输出发生器167同时输出来自超过三种来源的波形时,丢弃来自最旧 来源的波形)。
压缩器127接收波形(例如,来自混合器125的组合波形)作为输入, 并修改波形。在一些实施方案中,压缩器127减少波形(例如,根据触觉输 出发生器167(图1A)或357(图3)的物理规格),使得对应于波形的触 觉输出减少。在一些实施方案中,压缩器127限制波形,诸如通过强制执行 波形的预定义最大幅度。例如,压缩器127降低超过预定义幅度阈值的波形 部分的幅度,同时保持未超过预定义幅度阈值的波形部分的幅度。在一些实 施方案中,压缩器127减小波形的动态范围。在一些实施方案中,压缩器127 动态地减小波形的动态范围,使得组合波形保持在触觉输出发生器167的性 能规格(例如,力和/或可移动块位移限度)内。
低通滤波器129接收波形(例如,来自压缩器127的压缩波形)作为输 入,并且对波形进行滤波(例如,平滑处理)(例如,去除或减少波形中的 高频信号分量)。例如,在一些情况下,压缩器127包括在压缩波形中干扰 触觉输出的生成和/或在根据压缩波形来生成触觉输出时超过触觉输出发生 器167的性能规格的外部信号(例如,高频信号分量)。低通滤波器129减 少或去除波形中的此类外部信号。
热控制器131接收波形(例如,来自低通滤波器129的滤波后的波形) 作为输入,并且根据设备100的热状态(例如,基于设备100内检测到的内 部温度诸如触觉反馈控制器161的温度,和/或设备100所检测到的外部温度) 来调节波形。例如,在一些情况下,触觉反馈控制器161的输出根据温度而 变化(例如,触觉反馈控制器161响应于接收到相同波形,而在触觉反馈控 制器161处于第一温度时生成第一触觉输出,并且在触觉反馈控制器161处 于与第一温度不同的第二温度时生成第二触觉输出)。例如,触觉输出的量 值(或幅度)可根据温度而变化。为了降低温度变化的影响,对波形进行修 改(例如,基于温度来增大或减小波形的幅度)。
在一些实施方案中,触觉反馈模块133(例如,触发模块121)耦接到 硬件输入处理模块146。在一些实施方案中,图1A中的一个或多个其他输入 控制器160包括硬件输入处理模块146。在一些实施方案中,硬件输入处理 模块146从硬件输入设备145(例如,图1A中的其他输入或控制设备116, 诸如home按钮)接收输入。在一些实施方案中,硬件输入设备145是本文 所述的任何输入设备,诸如触敏显示器系统112(图1A)、键盘/鼠标350(图 3)、触控板355(图3)、其他输入或控制设备116之一(图1A)或强度敏 感home按钮(例如,如图2B所示,或如图2C所示具有机械致动器的home 按钮)。在一些实施方案中,硬件输入设备145包括强度敏感home按钮(例 如,如图2B所示,或如图2C所示具有机械致动器的home按钮),而不包 括触敏显示器系统112(图1A)、键盘/鼠标350(图3)或触控板355(图3)。 在一些实施方案中,响应于来自硬件输入设备145的输入,硬件输入处理模 块146向触觉反馈模块133提供一个或多个触发信号,以指示已检测到满足 预定义输入标准的用户输入,诸如对应于home按钮“点击”(例如,“按 下点击”或“松开点击”)的输入。在一些实施方案中,触觉反馈模块133 响应于对应于home按钮“点击”的输入,而提供对应于home按钮“点击” 的波形,从而模拟按压物理home按钮的触觉反馈。
在一些实施方案中,触觉输出模块包括控制触觉输出生成的触觉反馈控 制器161(例如,图1A中的触觉反馈控制器161)。在一些实施方案中,触 觉反馈控制器161耦接到多个触觉输出发生器,并且选择所述多个触觉输出 发生器的一个或多个触觉输出发生器,并将波形发送到所选择的一个或多个 触觉输出发生器以便生成触觉输出。在一些实施方案中,触觉反馈控制器161 协调对应于硬件输入设备145的激活的触觉输出请求和对应于软件事件的触 觉输出请求(例如,来自触觉反馈模块133的触觉输出请求),并且修改所 述两种或更多种波形的一种或多种波形,以相比于所述两种或更多种波形的 其余波形强调一种或多种特定波形(例如,通过增加一种或多种特定波形的 比例和/或减小其余波形的比例,诸如对应于硬件输入设备145的激活的触觉 输出的优先级高于对应于软件事件的触觉输出)。
在一些实施方案中,如图1C所示,触觉反馈控制器161的输出耦接到 设备100的音频电路(例如,音频电路110,图1A),并且向设备100的音 频电路提供音频信号。在一些实施方案中,触觉反馈控制器161提供用于生 成触觉输出的波形以及用于结合触觉输出的生成一起提供音频输出的音频信 号。在一些实施方案中,触觉反馈控制器161修改音频信号和/或波形(用于 生成触觉输出),使得音频输出和触觉输出同步(例如,通过延迟音频信号和/或波形)。在一些实施方案中,触觉反馈控制器161包括用于将数字波形 转换成模拟信号的数模转换器,模拟信号由放大器163和/或触觉输出发生器 167接收。
在一些实施方案中,触觉输出模块包括放大器163。在一些实施方案中, 放大器163接收波形(例如,来自触觉反馈控制器161)并且放大波形,之 后将放大的波形发送到触觉输出发生器167(例如,触觉输出发生器167(图 1A)或357(图3)中的任一者)。例如,放大器163将所接收的波形放大 到根据触觉输出发生器167的物理规格的信号电平(例如,放大到触觉输出 发生器167为生成触觉输出而需要的电压和/或电流,使得发送到触觉输出发生器167的信号产生对应于接收自触觉反馈控制器161的波形的触觉输出), 并且将放大的波形发送到触觉输出发生器167。作为响应,触觉输出发生器 167生成触觉输出(例如,通过使可移动块在一个或多个维度中相对于可移 动块的中立位置来回移动)。
在一些实施方案中,触觉输出模块包括传感器169,该传感器耦接到触 觉输出发生器167。传感器169检测触觉输出发生器167或触觉输出发生器 167的一个或多个部件(例如,用于生成触觉输出的一个或多个移动部件, 诸如膜)的状态或状态变化(例如,机械位置、物理位移和/或移动)。在一 些实施方案中,传感器169是磁场传感器(例如,霍尔效应传感器)或其他 位移和/或移动传感器。在一些实施方案中,传感器169向触觉反馈控制器161提供信息(例如,触觉输出发生器167中的一个或多个部件的位置、位移和/ 或移动),并且根据传感器169提供的有关触觉输出发生器167状态的信息, 触觉反馈控制器161调节从触觉反馈控制器161输出的波形(例如,任选地 经由放大器163发送到触觉输出发生器167的波形)。
图1D-1E是示出根据一些实施方案的独立于应用的软件模块的框图。
图1D示出触觉反馈模块133接收有关与设备100的用户交互的信息。 触觉反馈模块133响应于接收到该信息,生成触觉反馈生成指令并提供给触 觉反馈控制器161,该触觉反馈控制器继而将指令发送到触觉输出发生器167 以便生成触觉输出。在一些实施方案中,触觉反馈模块133对应于附录A中 所示的合成器和/或附录B中的AVHapticPlayer。
在一些实施方案中,应用(例如,应用1(136-1))将有关与设备100的 用户交互的信息(例如,信息272)发送到独立于应用的软件模块260,该独 立于应用的软件模块处理该信息,并且将经处理的信息(例如,与信息272 不同的信息274)发送到触觉反馈模块133。在一些实施方案中,应用对应于 附录A和B中所示的客户端应用。
在一些实施方案中,独立于应用的软件模块260与应用不同且与之分开, 如图1D所示。在一些实施方案中,独立于应用的软件模块260包括UIKit, 并且更具体地讲,包括附录A和B中所示的UIKit中的UIFeedbackGenerator。
在一些实施方案中,应用使用附录A和B中所述的各种功能和对象来与 独立于应用的软件模块260进行通信。
图1E类似于图1D,不同的是应用1(136-1,诸如电子邮件客户端应用) 和应用2(136-2,诸如浏览器应用)各自包括独立于应用的软件模块260的 不同实例(例如,不同拷贝)。此外,这些应用(例如,应用1和应用2) 各自包括特定于应用的应用核心(例如,应用1(136-1)包括应用核心1 (270-1),和/或应用2(136-2)包括应用核心2(270-2))。例如,应用核心1(270-1) 包括用于执行特定于应用1(136-1)的操作(例如,从一个或多个电子邮件服务器检索电子邮件)的指令,并且应用核心2(260-2)包括用于执行特定于应 用2(136-2)的操作(例如,收藏网页)的指令。
图1E还示出应用核心(例如,应用核心1(270-1)从独立于应用的软件 模块260或独立于应用的软件模块260的实例接收用户交互模型。在一些实 施方案中,用户交互模型包括识别多种用户界面元素类型272(例如,滑块 对象272-1、开关对象272-2等)和相关联的用户界面响应274的信息。在一 些实施方案中,用户界面响应包括识别要结合与对应用户界面元素的用户交 互一起生成的触觉输出的信息(例如,由滑块对象类型272-1表示的滑块对 象与触觉输出274-1相关联,并且由开关对象类型272-2表示的开关对象与 触觉输出274-2相关联)。例如,触觉输出274-1定义要在对应滑块移动时 和/或在滑块达到滑块的末端时生成哪些触觉输出,并且触觉输出274-2定义 要在对应开关对象接通和/或断开时生成哪些触觉输出。
在一些实施方案中,用户交互模型是预定义的类(例如,定义显示器上 的区域及用于管理该区域中的内容的界面的UIView类)。在运行时间,准 备视图对象(例如,创建UIView类的实例)以处理对应区域中的内容的呈 现,并且还处理与该内容的交互。在一些实施方案中,UIView类包括一种或 多种子类,诸如被配置用于实现具体动作所用的视觉元素的UIControl类、被 配置用于显示和编辑信息分级列表的UITableView类、被配置用于显示时间 轮以允许用户选择日期和/或时间的UIDatePicker类、被配置用于从连续值范 围选择单个值的UISlider类、以及被配置用于显示大于对应显示区域的内容 的UIScrollView类。在一些实施方案中,UITableView类、UIDatePicker类、 UISlider类和UIScrollView类是UIControl类的子类。
图2A示出根据一些实施方案的具有触摸屏(例如,触敏显示器系统112, 图1A)的便携式多功能设备100。触摸屏任选地在用户界面(UI)200内显示 一个或多个图形。在这些实施方案中以及在下文所述的其他实施方案中,用 户能够通过例如利用一个或多个手指202(在图中不按比例绘制)或一个或 多个触笔203(在图中不按比例绘制)在图形上作出手势来选择这些图形中 的一个或多个图形。在一些实施方案中,当用户中断与一个或多个图形的接 触时,将发生对这一个或多个图形的选择。在一些实施方案中,手势任选地 包括一次或多次轻击、一次或多次轻扫(从左向右、从右向左、向上和/或向 下)和/或已与设备100发生接触的手指的滚动(从右向左、从左向右、向上 和/或向下)。在一些具体实施中或在一些情况下,不经意地与图形接触不会 选择图形。例如,当与选择对应的手势是轻击时,在应用图标上方扫动的轻 扫手势任选地不会选择对应的应用。
设备100任选地还包括一个或多个物理按钮,诸如“home”或菜单按钮 204。如前所述,菜单按钮204任选地用于导航到任选地在设备100上被执行 的一组应用中的任何应用136。作为另外一种选择,在一些实施方案中,菜 单按钮被实现为被显示在触摸屏显示器112上的GUI中的软按键。
在一些实施方案中,设备100包括触摸屏显示器、菜单按钮204(有时 称为home按钮204)、用于使设备开/关机和用于锁定设备的下压按钮206、 一个或多个音量调节按钮208、用户身份模块(SIM)卡槽210、耳麦插孔212 和对接/充电外部端口124。下压按钮206被任选地用于:通过按下按钮并使 按钮在下压状态保持预定义的时间间隔来使设备通电/断电;通过按下按钮并 在经过所述预定义的时间间隔之前释放按钮来锁定设备;和/或对设备解锁或 发起解锁过程。在一些实施方案中,设备100还通过麦克风113来接受用于 激活或去激活某些功能的语音输入。设备100还任选地包括用于检测触敏显 示器系统112上的接触的强度的一个或多个接触强度传感器165、和/或用于 为设备100的用户生成触觉输出的一个或多个触觉输出发生器167。
在一些实施方案中,应用(例如,应用的应用核心,诸如应用核心1 (270-1))通过向用户交互模型中识别的用户界面元素(例如,滑块)填充应 用核心提供的内容来生成用户界面(例如,应用核心1(270-1)提供滑块元素 的范围及主和副刻度标记的位置和/或值)。
在一些实施方案中,应用将用户界面发送到图形模块132以供显示。
在一些实施方案中,应用从接触/运动模块130接收表示与设备100的用 户交互的信息。在一些实施方案中,应用将表示与设备100的用户交互的信 息中继到独立于应用的软件模块或其实例(例如,260-1),并且独立于应用 的软件模块将该信息或其子集发送到触觉反馈模块133以便生成触觉输出。 在一些实施方案中,应用还发送识别所选择的用户界面的一个或多个维度的 信息。在一些实施方案中,表示与设备100的用户交互的信息包括用户输入 的量值(例如,速率)和/或位置。
在一些实施方案中,触觉反馈模块133直接从接触/运动模块130(例如, 不经过应用)接收表示与设备100的用户交互的信息。
图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、DDR RAM或其他随机存取固态存储器设备,并且 任选地包括非易失性存储器诸如一个或多个磁盘存储设备、光盘存储设备、 闪存存储器设备或其他非易失性固态存储设备。存储器370任选地包括远离 一个或多个CPU 310定位的一个或多个存储设备。在一些实施方案中,存储 器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信号)的一个或多个信 号强度指示符402;
·时间404;
·蓝牙指示符;
·电池状态指示符406;
·具有常用应用的图标的托盘408,常用应用图标诸如:
○电话模块138的被标记为“电话”的图标416,该图标416任选地 包括未接来电或语音留言的数量的指示符414;
○电子邮件客户端模块140的被标记为“邮件”的图标418,该图标 418任选地包括未读电子邮件的数量的指示符410;
○浏览器模块147的被标记为“浏览器”的图标420;和
○视频和音乐播放器模块152(也称为iPod(Apple Inc.的商标)模 块152)的被标记为“iPod”的图标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,该图标446提供对设备100及其各种 应用136的设置的访问。
应当指出的是,图4A中示出的图标标签仅仅是示例性的。例如,在一 些实施方案中,视频和音乐播放器模块152的图标422被标记为“音乐”或 “音乐播放器”。其他标签任选地用于各种应用图标。在一些实施方案中, 相应应用图标的标签包括与该相应应用图标对应的应用的名称。在一些实施 方案中,特定应用图标的标签不同于与该特定应用图标对应的应用的名称。
图4B示出了具有与显示器450分开的触敏表面451(例如,平板或触摸 板355,图3)的设备(例如,设备300,图3)上的示例性用户界面。设备 300还任选地包括用于检测触敏表面451上的接触的强度的一个或多个接触 强度传感器(例如,传感器357中的一个或多个传感器)、和/或用于为设备 300的用户生成触觉输出的一个或多个触觉输出发生器359。
尽管将参考触摸屏显示器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(毫秒)的持续时间(例如,40、100或120ms,具体 取决于第二强度阈值的量值,其中延迟时间随第二强度阈值增大而增加)。 这个延迟时间有助于避免意外识别深按压输入。又如,对于一些“深按压” 输入,在达到第一强度阈值之后会出现敏感度降低的时间段。在这个敏感度 降低的时间段期间,提高第二强度阈值。第二强度阈值的该临时增大还有助 于避免意外的深按压输入。对于其他深按压输入,对检测到深按压输入的响应不取决于基于时间的标准。
在一些实施方案中,输入强度阈值和/或对应输出中的一者或多者基于一 种或多种因素而变化,所述因素诸如为用户设置、接触运动、输入定时、应 用运行、施加强度的速率、并行输入的数量、用户历史、环境因素(例如, 环境噪声)、焦点选择器位置等。示例性的因素在美国专利申请序列号 14/399,606和14/624,296中有所描述,这些美国专利申请全文以引用方式并 入本文中。
例如,图4C示出动态强度阈值480,该动态强度阈值部分地基于触摸输 入476随时间推移的强度而随时间变化。动态强度阈值480是两个分量之和, 即,自初始检测到触摸输入476时起的预定义延迟时间p1之后随时间推移而 衰减的第一分量474,以及跟踪触摸输入476随时间推移的强度的第二分量 478。第一分量474的初始高强度阈值降低了“深按压”响应的意外触发,同 时仍能在触摸输入476提供足够强度时实现立即“深按压”响应。第二分量 478降低了触摸输入中的逐渐强度波动所引起的“深按压”响应的无意触发。 在一些实施方案中,当触摸输入476满足动态强度阈值480(例如,图4C中 的点481处)时,触发“深按压”响应。
图4D示出另一个动态强度阈值486(例如,强度阈值ID)。图4D还示 出两个其他强度阈值:第一强度阈值IH和第二强度阈值IL。在图4D中,虽 然在时间p2之前触摸输入484满足第一强度阈值IH和第二强度阈值IL,但 直到在时间482时经过了延迟时间p2,才提供响应。另外在图4D中,动态 强度阈值486随时间推移而衰减,其中该衰减在自时间482起经过了预定义 延迟时间p1之后在时间488时开始(当触发了与第二强度阈值IL相关联的 响应时)。该类型的动态强度阈值降低了在紧随触发与较低强度阈值诸如第 一强度阈值IH或第二强度阈值IL相关联的响应之后或与之同时,与动态强度 阈值ID相关联的响应的意外触发。
图4E示出又一个动态强度阈值492(例如,强度阈值ID)。在图4E中, 在自初始检测到触摸输入490时起经过了延迟时间p2之后,触发与强度阈值 IL相关联的响应。同时,在自初始检测到触摸输入490时起经过了预定义延 迟时间p1之后,动态强度阈值492衰减。因此在触发与强度阈值IL相关联 的响应之后触摸输入490的强度减小,随后触摸输入490的强度增加而不释 放触摸输入490,这可触发与强度阈值ID相关联的响应(例如,在时间494时),即使当触摸输入490的强度低于另一个强度阈值例如强度阈值IL时, 也是如此。
接触特征强度从低于轻按压强度阈值ITL的强度增大到介于轻按压强度 阈值ITL与深按压强度阈值ITD之间的强度有时被称为“轻按压”输入。接触 特征强度从低于深按压强度阈值ITD的强度增大到高于深按压强度阈值ITD的强度有时被称为“深按压”输入。接触特征强度从低于接触检测强度阈值 IT0的强度增大到介于接触检测强度阈值IT0与轻按压强度阈值ITL之间的强 度有时被称为检测到触摸表面上的接触。接触特征强度从高于接触检测强度 阈值IT0的强度减小到低于接触检测强度阈值IT0的强度有时被称为检测到接 触从触摸表面抬起。在一些实施方案中,IT0为零。在一些实施方案中,IT0大于零。在一些图示中,阴影圆或椭圆用于表示触敏表面上的接触强度。在 一些图示中,没有阴影的圆或椭圆用于表示触敏表面上的相应接触而不指定 相应接触的强度。
在本文中所述的一些实施方案中,响应于检测到包括相应按压输入的手 势或响应于检测到利用相应接触(或多个接触)执行的相应按压输入来执行 一个或多个操作,其中至少部分地基于检测到该接触(或多个接触)的强度 增大到高于按压输入强度阈值而检测到相应按压输入。在一些实施方案中, 响应于检测到相应接触的强度增大到高于按压输入强度阈值来执行相应操作 (例如,在相应按压输入的“向下冲程”上执行相应操作)。在一些实施方 案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以及该接 触的强度随后减小到低于按压输入强度阈值,并且响应于检测到相应接触的 强度随后减小到低于按压输入阈值来执行相应操作(例如,在相应按压输入 的“向上冲程”上执行相应操作)。
在一些实施方案中,设备采用强度滞后以避免有时称为“抖动”的意外 输入,其中设备限定或选择与按压输入强度阈值具有预定义关系的滞后强度 阈值(例如,滞后强度阈值比按压输入强度阈值低X个强度单位,或滞后强 度阈值是按压输入强度阈值的75%、90%或某个合理比例)。因此,在一些 实施方案中,按压输入包括相应接触的强度增大到高于按压输入强度阈值以 及该接触的强度随后减小到低于对应于按压输入强度阈值的滞后强度阈值, 并且响应于检测到相应接触的强度随后减小到低于滞后强度阈值来执行相应操作(例如,在相应按压输入的“向上冲程”上执行相应操作)。类似地, 在一些实施方案中,仅在设备检测到接触的强度从等于或低于滞后强度阈值 的强度增大到等于或高于按压输入强度阈值的强度并且任选地接触的强度随 后减小到等于或低于滞后强度的强度时才检测到按压输入,并且响应于检测 到按压输入(例如,根据环境,接触的强度增大或接触的强度减小)来执行 相应操作。
为了容易解释,任选地,响应于检测到以下情况而触发对响应于与按压 输入强度阈值相关联的按压输入或响应于包括按压输入的手势而执行的操作 的描述:接触的强度增大到高于按压输入强度阈值、接触的强度从低于滞后 强度阈值的强度增大到高于按压输入强度阈值的强度、接触的强度减小到低 于按压输入强度阈值、或接触的强度减小到低于与按压输入强度阈值对应的 滞后强度阈值。另外,在将操作描述为响应于检测到接触的强度减小到低于 按压输入强度阈值而执行的示例中,任选地响应于检测到接触的强度减小到 低于对应于并且小于按压输入强度阈值的滞后强度阈值来执行操作。如上所 述,在一些实施方案中,这些响应的触发还取决于符合基于时间的标准(例 如,在符合第一强度阈值与符合第二强度阈值之间经过了延迟时间)。
虽然出于示例性目的而在图4F的样本触觉输出模式中仅表示了具体频 率、幅度和波形,但可出于类似目的而使用具有其他频率、幅度和波形的触 觉输出模式。例如,可使用具有0.5至4个周期的波形。也可使用在60Hz-400Hz 范围内的其他频率。
用户界面和相关联的过程
现在将注意力转到用户界面(“UI”)和相关联的过程的实施方案,它们 可在具有显示器、触敏表面和一个或多个传感器的电子设备诸如便携式多功 能设备100或设备300上实现,以检测与触敏表面的接触的强度。
图5A-5KKK示出根据一些实施方案的示例性用户界面和相关联的触觉 输出。这些附图中的用户界面被用于阐示在下面描述的过程,包括图6A-6D、 8A-8D、10A-10D、12A-12D、14A-14B、16A-16D、18A-18C和20A-20B中 的过程。为了便于解释,将参考在具有触敏显示器系统112的设备上执行的 操作来讨论一些实施方案。然而,响应于在显示器450上显示附图中所示的 用户界面以及焦点选择器时在触敏表面451上检测到接触,任选地在具有显示器450和独立触敏表面451的设备上执行类似操作。
图5A-5H示出根据一些实施方案的用于显示触觉输出和音频输出的控 制设置的用户界面。为了便于解释,在图5A-5H中所示的示例中,用户界面 500在相同用户界面中示出触觉输出设置和两个音频输出设置。在其他实施 方案中,可相反在与用于呈现音频设置(例如,用户界面500中所示的音频 输出设置)的一个或多个用户界面分开的一个或多个用户界面中呈现触觉输 出设置(例如,包括用户界面500中所示的触觉输出设置)。图5A-5H示出 用户界面500在便携式多功能设备100的触摸屏112上显示。
图5A示出用户界面500包括由标签501“滑块振动”指示的用于控制滑 块振动设置的滑块振动控制区域,以及对应的开关对象502。开关对象502 控制滑块振动设置的状态。图5A示出开关对象502初始在左位置(例如, 对应于滑块振动设置的“关”状态)。
图5A中的用户界面500还包括由标签“音量”指示的用于控制音频音 量水平的音频音量控制区域,以及设定为与音量滑块位置505相对应的音频 音量水平的对应音量滑块504。此外,用户界面500包括由标签“平衡”指 示的用于控制音频平衡设置的音频平衡控制区域,以及设定为与平衡滑块位 置507相对应的音频平衡设置的对应平衡滑块506。在一些实施方案中,设 备100包括一个或多个音频扬声器(例如,一个或多个扬声器111,图1A)。在一些实施方案中,设备100使用设备100中包括的所述一个或多个音频扬 声器来生成音频输出。在一些实施方案中,设备100将音频控制信号传输到 设备100之外的一个或多个外部音频扬声器。在一些实施方案中,音量滑块 504所表示的音频音量设置基于来自设备100的音频控制信号,来控制设备 100所生成的(例如,包括在设备100中的一个或多个音频扬声器所生成的) 和/或所述一个或多个外部音频扬声器所生成的音频输出的音量。在设备100 包括多个音频扬声器(例如,多个扬声器111,图1A)的一些实施方案中, 平衡滑块506所表示的音频平衡设置控制所述多个音频扬声器之间的音频输 出分布。在设备100将音频控制信号传输到多个外部音频扬声器的一些实施 方案中,平衡滑块506所表示的音频平衡设置控制所述多个外部音频扬声器 之间的音频输出分布。例如,如图5A所示,平衡滑块506所表示的音频平 衡设置控制被标记为“L”的扬声器(例如,左音频声道扬声器)与被标记为“R”的扬声器(例如,右音频声道扬声器)之间的音频输出分布。
图5B示出用户界面500从图5A中的用户界面500的转变。具体地讲, 图5B示出在显示如图5A中所呈现的用户界面500时检测到的用户输入503 (例如,轻击手势)。响应于检测到用户输入503,开关对象502从左位置 切换到右位置(例如,根据用户输入503切换开关对象502,滑块振动设置 从“关状态”切换到“开”状态)。另外,响应于检测到用户输入503,设备100生成触觉输出508(例如,中频微震动(150Hz),最大增益:0.8,最小 增益:0.0)。
图5C-5E示出用户界面500从图5B中的用户界面500的一系列转变。 具体地讲,图5C-5E示出响应于音量滑块位置505相对于音量滑块504的变 化而生成触觉输出。在一些实施方案中,如图5C-5E中所示,使用与相应音 量滑块位置所指示的相应音频音量水平相对应的触觉输出水平(例如,增益) 来生成触觉输出。
例如,图5C示出用户输入509朝设备100左边缘的移动(例如,用户 输入509是从与如图5B所示音量滑块位置505相对应的位置处的初始接触 向左的输入手势,诸如拖动手势)。响应于用户输入509,音量滑块504所 指示的音频音量水平改变为对应于音量滑块位置505-b的音频音量水平(例 如,从对应于图5B音量滑块位置505的音频音量水平改变)。此外,设备 100生成触觉输出510。根据音量滑块位置505-b指示接近最小音频音量水平 (例如,零音频音量)的音频音量水平,触觉输出510生成为轻触觉输出(例 如,增益为0.1的中频微震动(150Hz))。
图5D示出用户界面500从图5C中的用户界面500的转变。具体地讲, 图5D示出用户输入509远离设备100左边缘的移动。响应于用户输入509, 音量滑块504所指示的音频音量水平改变为对应于音量滑块位置505-c的音 频音量水平(例如,从对应于图5C音量滑块位置505-b的音频音量水平改变)。 此外,设备100生成触觉输出511。根据音量滑块位置505-c指示接近中等音 频音量水平的音频音量水平,触觉输出511生成为中等触觉输出(例如,增益为0.4的中频微震动(150Hz))。
图5E示出用户界面500从图5D中的用户界面500的转变。具体地讲, 图5E示出用户输入509朝设备100右边缘的移动。响应于用户输入509,音 量滑块504所指示的音频音量水平改变为对应于音量滑块位置505-d的音频 音量水平(例如,从对应于图5D音量滑块位置505-c的音频音量水平改变)。 此外,设备100生成触觉输出512。根据音量滑块位置505-d指示接近最大音 频音量水平的音频音量水平,触觉输出512生成为强触觉输出(例如,增益为0.7的中频微震动(150Hz))。
图5F示出用户界面500从图5E中的用户界面500的转变。具体地讲, 图5F示出用户输入509朝设备100右边缘的继续移动。响应于用户输入509, 音量滑块504所指示的音频音量水平改变为对应于音量滑块位置505-e的音 频音量水平(例如,从对应于图5E音量滑块位置505-d的音频音量水平改变)。 在图5F中所示的示例中,音量滑块位置505-e是音量滑块504的末端位置(例 如,对应于最大音频音量水平)。因此,设备100生成触觉输出513(例如, 中频微震动(150Hz),最大增益:0.6,最小增益:0.3)以指示已达到音量滑 块504的末端。
图5G-5H示出用户界面500从图5F中的用户界面500的一系列转变。 具体地讲,图5G-5H示出响应于平衡滑块位置507相对于平衡滑块506的变 化而生成触觉输出。如上文针对图5A所讨论,平衡滑块506所表示的音频 平衡设置控制被标记为“L”的扬声器(例如,左音频声道扬声器)与被标记 为“R”的扬声器(例如,右音频声道扬声器)之间的音频输出分布。在一 些实施方案中,如图5G-5H中所示,使用与相应平衡滑块位置所指示的相应 音频平衡设置相对应的触觉输出水平(例如,增益)来生成触觉输出。
例如,图5G示出用户输入514朝设备100左边缘的移动(例如,用户 输入514是从与如图5F所示平衡滑块位置507相对应的位置处的初始接触向 左的输入手势,诸如拖动手势)。响应于用户输入514,平衡滑块506所指 示的音频平衡设置(例如,从对应于图5F平衡滑块位置507的音频平衡设置) 改变为对应于平衡滑块位置507-b的音频平衡设置。如图5G中所示,平衡滑 块位置507-b接近平衡滑块506的边缘(例如,左边缘)。在一些实施方案中,平衡滑块位置507-b指示接近于对“L”扬声器的音频输出的最大分配且 接近于对“R”扬声器的音频输出的最小分配的音频平衡设置。响应于用户 输入514,设备100生成左侧触觉输出515-a(例如,使用位于设备100左区 域中的一个或多个触觉输出发生器167,图1A)和右侧触觉输出515-b(例 如,使用位于设备100右区域中的一个或多个触觉输出发生器167,图1A)。 此外,根据平衡滑块位置507-b指示接近于对“L”扬声器的音频输出的最大 分配的音频平衡设置,左侧触觉输出515-a生成为强触觉输出(例如,增益 为0.7的中频微震动(150Hz))。根据平衡滑块位置507-b指示接近于对“R” 扬声器的音频输出的最小分配的音频平衡设置,右侧触觉输出515-b生成为 轻触觉输出(例如,增益为0.1的中频微震动(150Hz))。
图5H示出用户界面500从图5G中的用户界面500的转变。具体地讲, 图5H示出用户输入514远离设备100左边缘且朝右边缘的移动。响应于用 户输入514,平衡滑块506所指示的音频平衡设置(例如,从对应于图5G平 衡滑块位置507-b的音频平衡设置)改变为对应于平衡滑块位置507-c的音频 平衡设置。如图5H中所示,平衡滑块位置507-c接近平衡滑块506的边缘(例 如,右边缘)。在一些实施方案中,平衡滑块位置507-c指示接近于对“R” 扬声器的音频输出的最大分配且接近于对“L”扬声器的音频输出的最小分配 的音频平衡设置。响应于用户输入514,设备100生成左侧触觉输出516-a(例 如,使用位于设备100左区域中的一个或多个触觉输出发生器167,图1A) 和右侧触觉输出516-b(例如,使用位于设备100右区域中的一个或多个触觉 输出发生器167,图1A)。此外,根据平衡滑块位置507-c指示接近于对“R” 扬声器的音频输出的最大分配的音频平衡设置,右侧触觉输出516-b生成为 强触觉输出(例如,增益为0.7的中频微震动(150Hz))。根据平衡滑块位置 507-c指示接近于对“L”扬声器的音频输出的最小分配的音频平衡设置,左 侧触觉输出516-a生成为轻触觉输出(例如,增益为0.1的中频微震动 (150Hz))。
图5I-5J示出根据一些实施方案用于在用户输入跨越所显示的菜单项时 生成触觉输出的示例性用户界面。具体地讲,图5I示出在触摸屏112上的与 用户界面520中的键盘界面菜单图标522相对应的位置处检测到的用户输入 521(例如,接触)。响应于检测到用户输入521,显示键盘界面菜单523。 键盘界面菜单523包括表示键盘界面选项的多个所显示的菜单项示能表示, 包括键盘选项示能表示524(用于选择英语键盘界面)、键盘选项示能表示 525(用于选择表情符号键盘界面)和键盘选项示能表示526(用于选择法语 键盘界面)。在用户界面521移动之前,在键盘选项示能表示524上显示当 前选择指示(例如,阴影),以指示对应于键盘选项示能表示524的键盘界 面(例如,英语键盘界面)是当前显示的键盘界面。
图5J示出用户界面520随时间推移从图5I中的520的一系列转变。图 5J示出用户输入521(例如,用户输入521是从与如图5I中所示键盘选项菜 单图标522相对应的位置处的初始接触起的连续输入手势)跨越键盘选项菜 单523的所显示的菜单项示能表示。在T=t1时,用户输入521已朝键盘选项 示能表示526移动,但尚未到达对应于键盘选项示能表示526(例如,激活 对其的选择)的位置。因此,继续在键盘选项示能表示526上显示当前选择指示。
在T=t2时,用户输入521已移动到激活对键盘选项示能表示526的选择 的位置。根据用户输入521激活对键盘选项示能表示526的选择,生成触觉 输出528(例如,高频微震动(270Hz),增益:0.4)。此外,在键盘选项示能 表示526上显示当前选择指示(例如,阴影),以指示键盘选项示能表示526 是当前选择的键盘选项示能表示。因此,不再在键盘选项示能表示524上显 示当前选择指示。在一些实施方案中,在键盘选项示能表示526上显示当前选择指示时停止检测用户输入521后,对应于键盘选项示能表示526的键盘 界面变成当前显示的键盘界面。
在T=t3时,用户输入521已朝键盘选项525移动,但尚未到达对应于键 盘选项示能表示525(例如,激活对其的选择)的位置。因此,继续在键盘 选项示能表示526上显示当前选择指示。
在T=t4时,用户输入521已移动到激活对键盘选项示能表示525的选择 的位置。根据用户输入521激活对键盘选项示能表示525的选择,生成触觉 输出529。在一些实施方案中,根据用户输入激活对菜单(例如,键盘界面 菜单523)中的相应菜单项示能表示(例如,键盘选项示能表示524,525,526 之一)的选择来生成触觉输出。在一些实施方案中,根据用户输入激活对与 先前所选的菜单项不同的相应菜单项示能表示的选择来生成触觉输出。在一 些实施方案中,根据用户输入激活对键盘界面菜单523中的相应菜单项示能 表示的选择而生成的触觉输出为相同类型。例如,在T=t4时根据用户输入521 激活对键盘选项示能表示525的选择而生成的触觉输出529,是与在T=t3时 根据用户输入521激活对键盘选项示能表示526的选择而生成的触觉输出 528相同类型的触觉输出(例如,高频微震动(270Hz),增益:0.4)。
图5K-5O示出根据一些实施方案用于在可移动部件根据一个或多个滚 动输入而旋转时生成触觉输出的示例性用户界面。在图5K-5O中所示的示例 中,触摸屏112上显示的用户界面530包括时间选取器的用户界面(例如, 通过使用附录B中所述的UIDatePicker类所生成)。用户界面530包括可移 动部件531,该可移动部件进一步包括可移动元素,例如用于从0-23小时选 择小时值的小时轮532,以及用于从0-59分钟选择分钟值的分钟轮533。在一些实施方案中,用户界面530是日期选取器(例如,包括用于分别从多个 年、月和日数值选择一个年、月和日数值的可移动部件)。在一些实施方案 中,在可移动部件531或可移动部件531的可移动元素(诸如小时轮532或 分钟轮533)通过相应标记(例如,由静态指示符(诸如用于小时轮532的 “小时”或用于分钟轮533的“分钟”)标记的位置)时生成触觉输出。
图5K-5O示出移动分钟轮533以及与移动分钟轮533相关联地生成的触 觉输出。图5K示出可移动部件531的分钟轮533初始显示所选择的“59分 钟”分钟值。此外,图5K示出设备100在对应于分钟轮533的触摸屏112 上的位置处检测到的用户输入534(例如,滚动输入)。在一些实施方案中, 用户输入532包括接触从对应于分钟轮533的初始位置的向下移动以及后续 的接触抬起。
图5L-5O示出响应于检测到用户输入534,分钟轮533通过相应标记。 在一些实施方案中,如图5L-5O中所示,在设备100停止检测用户输入534 (例如,检测到用户输入534的接触的抬起)之后,分钟轮533继续根据惯 性矩移动(例如,旋转),并且该继续移动逐渐减速直至分钟轮533停止。
图5L示出了响应于用户输入534,分钟轮533已移动到分钟值“58分 钟”。根据分钟轮533移动到分钟值“58分钟”,设备100生成触觉输出535 (例如,增益为0.4且最小间隔0.05秒的高频微震动(270Hz))。在一些实施 方案中,设备100还生成音频输出(例如,伴随触觉输出的音频输出)。
图5M示出分钟轮533已移动到分钟值“56分钟”(例如,在通过分钟 值“57分钟”之后)。在一些实施方案中,当分钟轮533响应于用户输入(例 如,响应于轻弹手势)而快速移动时,放弃生成与移动到相应标记的分钟轮 533相对应的触觉输出。例如,时间间隔由以下两个时间点确定:与最近生 成的触觉输出相对应的时间点,以及与对应于移动到相应标记的分钟轮533 的预期触觉输出相对应的时间点。在一些实施方案中,根据确定该时间间隔小于阈值(例如,0.05秒),放弃生成与移动到相应标记的分钟轮533相对 应的触觉输出。例如,如图5M中所示,在分钟轮533移动到“56分钟”时 不生成触觉输出,因为与最近生成的触觉输出(例如,对应于图5L经过“58 分钟”的分钟轮533的触觉输出535)的生成相对应的时间和与对应于经过 “56分钟”的分钟轮533的触觉输出的预期生成相对应的时间之间的时间间 隔小于阈值。换句话说,在达到触觉输出速率限度,例如所确定的时间间隔 小于最小间隔阈值(例如,0.05秒)时,跳过触觉输出。
图5N示出分钟轮533已移动到分钟值“54分钟”(例如,在通过分钟 值“55分钟”之后)。如图5N中所示,结合分钟轮533移动到分钟值“54 分钟”,设备100生成触觉输出536(例如,增益为0.4且最小间隔0.05秒 的高频微震动(270Hz))。在一些实施方案中,在对应于最近生成的触觉输出 (例如,对应于图5L经过“58分钟”的分钟轮533的触觉输出535)的时间与对应于触觉输出536的时间之间确定时间间隔。在一些实施方案中,根据 所确定的时间间隔至少为(例如,大于或等于)阈值来生成触觉输出536。
图5O示出分钟轮533已移动到分钟值“53分钟”(例如,从图5N分 钟值“54分钟”)。如图5O中所示,在分钟轮533移动到“53分钟”时不 生成触觉输出,因为与最近生成的触觉输出(例如,对应于图5N经过“54 分钟”的分钟轮533的触觉输出536)的生成相对应的时间和与对应于经过 “53分钟”的分钟轮533的触觉输出的预期生成相对应的时间之间的时间间 隔小于阈值。
图5P-5II示出示例性用户界面,其用于生成触觉输出以指示与用户界面 元素相关联的阈值。
图5P-5W示出示例性用户界面,其用于生成触觉输出以指示与电子邮件 应用(例如,电子邮件客户端模块140,图1A和3)中的电子邮件概要项列 表相关联的阈值,诸如用于刷新电子邮件应用中显示的内容的阈值。在一些 实施方案中,使用附录B中所述的UIRefreshControl类来生成示例性用户界 面。在图5P-5W中所示的示例中,用户界面540包括电子邮件概要项列表, 该列表包括电子邮件概要项541,542和543。虚线(通常不向用户显示)表 示电子邮件概要项列表的边缘549(例如,顶部边缘)。电子邮件概要项列 表的当前状态(例如,“刚刚更新”)由状态指示符字段547指示。被标记 为Dth的第二条虚线指示用于刷新用户界面540的电子邮件概要项列表中显 示的内容的移动阈值。
在图5P中,设备100检测对应于电子邮件概要项列表(例如,对应于 电子邮件概要项541)的触摸屏112上的位置处的用户输入544(例如,接触)。
图5Q示出用户界面540从图5P中的用户界面540的转变。具体地讲, 图5Q示出用户输入544的向下移动(例如,用户输入是拖动手势,其包括 如图5P中所示触摸屏112上的初始接触,之后是接触的向下移动。)响应于 用户输入544的向下移动,电子邮件概要项列表向下移动(例如,电子邮件 概要项541,542和543在用户界面540中向下移动),并且因此电子邮件概 要项列表的边缘549向下移动。在一些实施方案中,响应于用户输入544, 在通过电子邮件概要项列表向下移动而显现的电子邮件概要项列表上方的区 域中显示进度指示符548。进度指示符548指示例如用户输入544的移动是 否符合用于刷新电子邮件概要项列表的刷新标准和/或是否正在进行刷新过 程以下载和呈现新接收到的电子邮件。如图5Q中所示,在用户输入544跨 越移动阈值Dth之前,进度指示符548以进度指示符轮辐的不完整的环显示。
图5R示出用户界面540从图5Q中的用户界面540的转变。具体地讲, 图5R示出用户输入544从如图5Q中所示的其位置进一步向下移动(例如, 图5Q中所示的拖动手势的延续)。响应于用户输入544的向下移动,电子 邮件概要项列表从如图5Q中所示的其位置进一步向下移动(例如,电子邮 件概要项541,542和543在用户界面540中进一步向下移动)。如图5R中 所示,响应于用户输入544,电子邮件概要项列表的边缘549已跨越移动阈 值Dth。因此,在一些实施方案中,进度指示符548以进度指示符轮辐的完整 环显示。在一些实施方案中,更新状态指示符字段547中指示的状态,以指 示已发起内容刷新过程(例如,“检查邮件…”),诸如用于检查自上次刷 新内容时起接收到的电子邮件的内容刷新过程。此外,设备100生成触觉输 出545。在一些实施方案中,设备100响应于边缘549跨越移动阈值Dth而生成触觉输出545(例如,高频微震动(270Hz),增益:0.6)。在一些实施方案 中,根据用户输入544的继续移动,在生成触觉输出545时边缘549处于超 过移动阈值Dth的位置。
图5S示出用户界面540从图5R中的用户界面540的转变。具体地讲, 图5S示出响应于停止从对应于跨越移动阈值Dth的边缘549的位置(例如, 如上文参考图5R所述)检测用户输入544(例如,响应于由用户输入544引 起的接触的抬起)而出现的用户界面540。响应于停止检测用户输入544,电 子邮件概要项列表被释放并逐渐返回到其初始位置(例如,向上移动),如 图5S-5T中所示。此外,更新状态指示符字段547,以指示正在下载新电子 邮件消息(例如,“正在下载第1封,共1封”)。在图5S中所示的示例中, 更新进度指示符548,以指示内容刷新过程正在进行。
图5T示出用户界面540从图5S中的用户界面540的转变。具体地讲, 图5S示出在设备100停止检测用户输入544之后,电子邮件概要项列表已返 回到如图5P中所示的其初始位置。根据上文参考图5R-5S所述的内容刷新过 程,在电子邮件概要项列表中示出对应于新下载的电子邮件消息的电子邮件 概要项546。在一些实施方案中,如图5T中所示,更新状态指示符字段547, 以指示已更新电子邮件概要项列表(例如,“刚刚更新”)。
图5U-5V类似于如上所述的图5P-5Q。具体地讲,图5U示出在对应于 用户界面540中的电子邮件概要项列表(例如,对应于电子邮件概要项541) 的触摸屏112上的位置处检测到的用户输入544(例如,初始接触),并且 图5V示出响应于用户输入544的向下移动(例如,包括初始接触、之后是 接触的向下移动的拖动手势)(包括电子邮件概要项列表和边缘549的向下 移动)而出现用户界面540的转变。在一些实施方案中,如果在边缘549跨 越移动阈值Dth之前设备100停止检测用户输入544(例如,设备100检测接 触的抬起),则不响应于边缘549的移动而生成触觉输出。图5W示出用户 界面540从图5V中的用户界面540的这种转变的示例。图5W示出响应于 停止检测用户输入544,用户界面540返回到其初始位置(例如,向上移动), 并且不生成触觉输出。
图5X-5Y示出示例性用户界面,其用于生成触觉输出以指示与电子邮件 应用(例如,电子邮件客户端模块140,图1A和3)中的电子邮件概要项列 表相关联的阈值,诸如电子邮件概要项列表的边缘处的阈值。在图5X-5Y中 所示的示例中,用户界面550包括电子邮件概要项列表,该列表包括电子邮 件概要项551,552,553,554,555和556。虚线(通常不向用户显示)表示阈 值557,该阈值指示电子邮件概要项列表的显示区域的底部边缘。如图5X中所示,电子邮件概要项列表中的电子邮件概要项556的至少一部分低于阈值 557。因此,不显示低于阈值557的电子邮件概要项556的部分。另外,图 5X示出在对应于电子邮件概要项列表的触摸屏112上的位置处检测到的用户 输入558。例如,如图5X中所示,用户输入558包括对应于电子邮件概要项 列表的电子邮件概要项554的初始接触,之后是该接触的向上移动。
图5Y示出响应于用户输入558的向上移动,电子邮件概要项列表向上 移动(例如,电子邮件概要项551,552,553,554和556在用户界面550中向 上移动),使得电子邮件概要项556在电子邮件概要项列表的显示区域中完 整显示。因此,电子邮件概要项551(例如,最顶部的电子邮件概要项)的 一部分移动通过电子邮件概要项列表的显示区域的顶部边缘。如图5Y中所 示,未显示位于显示区域的顶部边缘上方的电子邮件概要项的部分。根据电子邮件概要项列表的向上移动使得电子邮件概要项556完整显示,由第二条 较粗虚线表示的电子邮件概要项556的底部边缘556-b跨越阈值557。在一些 实施方案中,根据底部边缘556-b跨越阈值557,设备100生成触觉输出559 (例如,高频微震动(270Hz),增益:0.6)。
图5Z-5II示出示例性用户界面,其用于生成触觉输出以指示与缩放操作 相关联的阈值。具体地讲,图5Z-5EE示出示例性用户界面,其用于根据在 放大操作期间所显示的用户界面元素的缩放比例跨越最大缩放阈值来生成触 觉输出。图5FF-5II示出示例性用户界面,其用于根据在缩小操作期间所显示 的用户界面元素的缩放比例跨越最小缩放阈值来生成触觉输出。在图5Z-5II 中所示的示例中,用户界面560包括Web浏览器应用(例如,浏览器模块 147,图1A)的用户界面。
图5Z示出触摸屏112上所显示的用户界面560。在一些实施方案中,如 图5Z中所示,用户界面560包括由虚线轮廓(通常不向用户显示)指示的用 户界面区域561。例如,在图5Z中,用户界面区域561包括对应于网址 “apple.com”的网页的内容,包括多个用户界面元素(例如,包括苹果图标 的顶部菜单栏、“MacBook Air”、“MacBook Pro”和“iMac”的图标等)。 缩放程度比例563指示用户界面区域561相对于最小缩放阈值Z最小和最大缩 放阈值Z最大的缩放比例。在图5Z中,例如,缩放程度比例563指示用户界 面区域561的缩放比例对应于最小缩放阈值Z最小。图5Z还示出在对应于用 户界面区域561(例如,之内)的位置处的用户界面560上检测到的对应于 张开手势的用户输入562(例如,检测到图5Z中所示的初始位置处的两个手 指接触及这两个接触如箭头所指示的那样远离彼此的移动)。在一些实施方案中,通过使用附录B中所述的UIZoomEdgeFeedbackGenerator类来生成图 5Z中所示的用户界面。
图5AA示出用户界面560从图5Z中的用户界面560的转变。在一些实 施方案中,响应于检测到用户输入562(例如,张开手势),用户界面区域 561扩展(例如,用户界面区域561的缩放比例增加),使得用户界面区域 561延伸超过触摸屏112(例如,用户界面区域561的外边缘延伸超过触摸屏 112的一个或多个外边缘)。因此,仅在触摸屏112上显示用户界面区域561 的一部分(例如,不在触摸屏112上显示包括苹果图标的顶部菜单栏的部分 以及“MacBook Air”和“iMac”的图标的部分)。缩放程度比例563指示用 户界面区域561的缩放比例已增加到高于最小缩放阈值Z最小。
图5BB示出用户界面560从图5AA中的用户界面560的转变。具体地 讲,图5BB示出响应于用户输入562的延续(例如,这两个接触远离彼此继 续移动所引起的张开手势的延续),用户界面区域561进一步扩展(例如, 用户界面区域561的缩放比例进一步增加),使得用户界面区域561进一步 延伸超过触摸屏112。因此,与图5AA中相比,图5BB中在触摸屏112上显 示用户界面561的更少部分(例如,在触摸屏112上不显示顶部菜单栏以及 “MacBookAir”、“MacBook Pro”和“iMac”的图标)。缩放程度比例563 指示用户界面区域561的缩放比例已进一步增加到高于最小缩放阈值Z最小, 但仍然低于最大缩放阈值Z最大。
图5CC示出用户界面560从图5BB中的用户界面560的转变。具体地 讲,图5CC示出响应于用户输入562的进一步延续(例如,这两个接触远离 彼此进一步继续移动所引起的张开手势的进一步延续),用户界面区域561 进一步扩展(例如,用户界面区域561的缩放比例进一步增加),使得用户 界面区域561进一步延伸超过触摸屏112。因此,与图5BB中相比,图5CC 中在触摸屏112上显示用户界面561的更少部分。缩放程度比例563指示用 户界面区域561的缩放比例已进一步增加到高于最小缩放阈值Z最小,达到最 大缩放阈值Z最大。根据用户界面区域561的缩放比例达到最大缩放阈值Z最大,设备100生成触觉输出564(例如,高频微震动(270Hz),增益:0.6)。
图5DD示出用户界面560从图5CC中的用户界面560的转变。具体地 讲,图5DD示出响应于用户输入562的延续(例如,在这两个接触远离彼此 进一步移动之后继续检测到张开手势的这两个接触),用户界面区域561进 一步扩展(例如,用户界面区域561的缩放比例进一步增加),使得用户界 面区域561进一步延伸超过触摸屏112。因此,与图5CC中相比,图5DD中 在触摸屏112上显示用户界面561的更少部分。缩放程度比例563指示用户 界面区域561的缩放比例已增加到高于最大缩放阈值Z最大。在一些实施方案 中,响应于用户输入562的延续,用户界面区域561的缩放比例暂时增加到 高于最大缩放阈值Z最大。
图5EE示出用户界面560从图5DD中的用户界面560的转变。具体地 讲,图5EE示出响应于停止检测用户输入562(例如,响应于张开手势的这 两个接触的抬起)而出现的用户界面560。虽然图5DD示出响应于用户输入 562,用户界面区域561的缩放比例暂时增加到高于最大缩放阈值Z最大,但 图5EE示出响应于停止检测用户输入562,用户界面区域561的缩放比例恢 复到Z最大,如缩放程度比例563所指示。
图5FF-5II示出用户界面560的另选转变,其对应于根据在缩小操作期 间用户界面区域561的缩放比例跨越最小缩放阈值Z最小来生成触觉输出。图 5FF类似于图5AA,并且示出用户界面560的用户界面区域561扩展,使得 用户界面区域561延伸超过触摸屏112(例如,用户界面区域561延伸超过 触摸屏112的一个或多个外边缘)。因此,仅在触摸屏112上显示用户界面 区域561的一部分(例如,不在触摸屏112上显示包括苹果图标的顶部菜单栏的部分以及“MacBook Air”和“iMac”的图标的部分)。缩放程度比例 563指示用户界面区域561的缩放比例高于最小缩放阈值Z最小,缩放比例类 似于图5AA中所示的缩放比例。图5FF还示出在对应于用户界面区域561(例 如,之内)的位置处的用户界面560上检测到的对应于捏合手势的用户输入 565(例如,检测到图5FF中所示的初始位置处的两个手指接触及这两个接触 如箭头所指示的那样朝向彼此的移动)。
图5GG示出用户界面560从图5FF中的用户界面560的转变。在一些 实施方案中,响应于检测到用户输入565(例如,捏合手势),设备100缩 小用户界面区域561(例如,减小用户界面区域561的缩放比例),使得用 户界面区域561不延伸超过触摸屏112(例如,在触摸屏112上完全显示用 户界面区域561)。缩放程度比例563指示用户界面区域561的缩放比例处 于最小缩放阈值Z最小(例如,用户界面区域561的缩放比例已从图5FF中所 示的缩放比例减小到Z最小)。响应于用户界面区域561的缩放比例达到最小 缩放阈值Z最小,设备100生成触觉输出566(例如,高频微震动(270Hz),增 益:0.6)。
图5HH示出用户界面560从图5GG中的用户界面560的转变。在图5HH 中,响应于检测到用户输入565的延续(例如,在这两个接触朝向彼此进一 步移动之后继续检测到捏合手势的这两个接触),设备100进一步缩小用户 界面(例如,用户界面区域561的缩放比例进一步减小),使得用户界面区 域561的外边缘位于触摸屏112内。缩放程度比例563指示用户界面区域561 的缩放比例已减小到低于最小缩放阈值Z最小。在一些实施方案中,响应于用户输入565的延续,用户界面区域561的缩放比例暂时减小到低于最小缩放 阈值Z最小。
图5II示出用户界面560从图5HH中的用户界面560的转变。具体地讲, 图5II示出响应于停止检测用户输入565(例如,响应于捏合手势的这两个接 触的抬起)而出现的用户界面560。虽然图5HH示出响应于用户输入565, 用户界面区域561的缩放比例暂时减小到低于最小缩放阈值Z最小,但图5II 示出响应于停止检测用户输入565,用户界面区域561的缩放比例恢复到Z最小,如缩放程度比例563所指示。
图5JJ-5SS示出根据一些实施方案用于相对于拾取、拖动和丢弃用户界 面对象的操作而生成触觉输出的示例性用户界面。
图5JJ-5KK示出根据一些实施方案用于相对于重新布置列表中的列表元 素而生成触觉输出的示例性列表用户界面。根据用户输入的移动(例如,包 括初始接触、之后是该接触的移动的拖动手势)来移动列表元素,由此进行 重新布置。在图5JJ中,用户界面570a包括示例性时钟界面,其用于编辑显 示与多个城市相关联的当地时间的时钟列表(例如,基于与城市“Cupertino”、 “New York”、“Tokyo”和“Melbourne”相关联的时区)。用户界面570a 包括多个预先确定的弹跳位置,它们对应于用于显示列表元素的多个位置。 如图5JJ中所示,在相应预先确定的弹跳位置中显示列表元素(例如,时钟), 包括被标记为“Tokyo”的列表元素572以及被标记为“New York”的列表 元素573。图5JJ还示出在对应于列表元素572(例如,对应于位于列表元素 572右边缘附近的重新排序示能表示)的触摸屏112上的位置处检测到的用 户输入571。
图5KK示出用户界面570a从图5JJ中的用户界面570a的一系列转变。 用户界面570a的该系列转变包括分别对应于用户输入571第一部分、第二部 分、第三部分和第四部分的用户界面570b,570c,570d和570e。在图5KK中, 时间T=t0对应于如图5JJ中所示且上文参考该图所述的用户界面570a。在时 间T=t1时,用户界面570b示出响应于用户输入571的第一部分(例如,初 始接触或长按压手势)而选择列表元素572。设备100在视觉上指示选择了 列表元素572(例如,通过突出显示和/或放大所选择的列表元素572)。任 选地,在一些实施方案中,响应于用户输入571的第一部分选择列表元素572, 设备100生成触觉输出574b(例如,增益为1.0的高频微震动(270Hz))以指 示已选择列表元素572。
在一些实施方案中,在选择了列表元素572时,检测到用户输入571的 第二部分。例如,用户输入571的第二部分包括继续接触,之后是该接触的 向上移动(例如,在初始接触或长按压手势之后向上移动)。在时间T=t2时, 用户界面570c示出根据在用户输入571的第二部分期间用户输入571的向上 移动,所选择的列表元素572向上移动。例如,所选择的列表元素572朝向 未选择的列表元素573(例如,“New York”)的位置向上移动。因此,所选择的列表元素572显示于未选择的列表元素573的至少一部分上方。
在时间T=t3时,用户界面570d示出在用户输入571的第三部分期间检 测到的、用户输入571从如对应于时间T=t2的用户界面570c中所示的用户输 入571的位置继续向上移动。根据用户输入571的继续向上移动,所选择的 列表元素572移动到对应于未选择的列表元素573的先前位置(例如,如用 户界面570c中所示)的预先确定的弹跳位置。在一些实施方案中,对应于所 选择的列表元素572的先前位置(例如,如用户界面570a中所示)的预先确 定的弹跳位置变为空白。根据所选择的列表元素572移动到对应于未选择的 列表元素573的先前位置的预先确定的弹跳位置,未选择的列表元素573向 下移动到对应于所选择的列表元素572的先前位置的预先确定的弹跳位置 (例如,未选择的列表元素573和所选择的列表元素572显示为具有交换的 位置)。在一些实施方案中,结合所选择的列表元素572移动到先前对应于 未选择的列表元素573的预先确定的弹跳位置,设备100生成触觉输出574d (例如,增益为1.0的高频微震动(270Hz))。
在时间T=t4时,设备100已停止检测用户输入571(例如,设备100已 检测到用户输入571的第四部分,用户输入571的第四部分包括接触的抬起), 同时所选择的列表元素572处于预先确定的弹跳位置,如对应于时间T=t3的 用户界面570d中所示。因此,列表元素572固定到列表元素573先前占据的 位置中并在该位置中显示(例如,作为未选择的列表元素),而列表元素573 在列表元素572先前占据的位置(例如,如用户界面570a中所示)中显示。 任选地,在一些实施方案中,响应于列表元素572固定到时钟列表中,设备 100生成触觉输出574e(例如,增益为0.6的高频微震动(270Hz))以指示已 丢弃列表元素572。
图5LL-5QQ示出根据一些实施方案用于相对于移动日历对象而生成触 觉输出的示例性日历用户界面。图5LL示出用户界面575包括对应于现有日 历条目(例如,“吃午餐”和“去健身房”)的两个现有日历对象。被标记 为“去健身房”的日历对象576初始安排于9月3日周三上午11:15。在一些 实施方案中,通过使用附录B中所述的UITableView类来生成用户界面575。
图5MM示出用户界面575从图5LL中的用户界面575的转变。具体地 讲,图5MM示出在对应于日历对象576的触摸屏112上的位置处检测到的 用户输入577的第一部分(例如,长按压手势)。响应于用户输入577的第 一部分,选择(例如,拾取)日历对象576。在一些实施方案中,显示视觉 指示以指示已选择日历对象,使得日历对象看起来在虚拟z方向上从用户界 面的表面提起和/或悬浮于用户界面的表面之上或上方。例如,在图5MM中, 显示所选择的日历对象576b,代替日历对象576(如在图5LL中)。所选择 的日历对象576b显示具有两个句柄。此外,所选择的日历对象576b的颜色 变暗(例如,相对于日历对象576,图5LL),并且显示阴影,使得日历对 象576b看起来像是从用户界面575的表面提起(例如,日历对象576b看起 来向用户界面575上投影)。在一些实施方案中,结合视觉上指示对日历对 象576的选择(例如,通过显示所选择的日历对象576b),设备100生成触 觉输出578(例如,增益为1.0的高频微震动(270Hz))。
图5NN示出用户界面575从图5MM中的用户界面575的转变。具体地 讲,图5NN示出用户输入577的第二部分,其包括用户输入577(例如,从 如图5MM中所示的用户输入577的位置)朝向触摸屏112右边缘的横向移 动。响应于用户输入577的第二部分的横向移动,所选择的日历对象576b 在用户界面575中朝向触摸屏112的右边缘拖动。在一些实施方案中,在通 过用户输入577的移动来拖动所选择的日历对象576b时,显示日历对象576 (例如,移动对象的重影图像,其指示移动对象的现有或预先移动的位置, 在一些实施方案中具有与未选择的对象诸如未选择的对象“吃午餐”相同的 外观)。在一些实施方案中,在拖动所选择的日历对象576b的情况下,当所 选择的日历对象576b接近相应弹跳位置时,所选择的日历对象576b弹跳到 一个或多个相应弹跳位置(例如,对应于相应天或小时)。
图5OO示出响应于用户输入577的第三部分,用户界面575从图5NN 中的用户界面575的转变,该用户输入577的第三部分包括用户输入577朝 向触摸屏112右边缘的进一步移动(例如,对应于所选择的日历对象576b 的继续接触的移动)。在一些实施方案中,用户输入577移动到所显示的日 历界面的边界(例如,边缘)或移动到离所显示的日历界面的边界的预先确 定的距离内,这会触发根据用户输入577的移动来更新日历界面。例如,根 据用户输入577移动到所显示的日历界面的边界或移动到离所显示的日历界 面的边界的预先确定的距离内,显示对应于(例如,邻近)边界的日历界面 的附加部分。在一些实施方案中,结合显示日历界面的附加部分,不再显示 与边界相背对的日历界面的一部分(例如,日历界面的所显示的日期范围或 所显示的时间范围前移或后移至少一个日期或时间间隔)。例如,在图5OO 中,根据用户输入577朝向触摸屏112的右边缘的进一步移动,用户输入577在离用户界面575的右边缘的预先确定的距离内移动,该用户界面575的右 边缘对应于9月6日周六的日期边界(例如,9月6日周六与9月7日周日 (在图5OO的用户界面575中不可见)之间的日期边界)。
响应于如图5OO中所示用户输入577的第三部分的进一步移动,图5PP 示出用户界面575从图5OO中的用户界面575的转变。具体地讲,图5PP 示出响应于用户输入577,用户界面575中所显示的日期范围前移一天时间 (例如,更新用户界面575以包括最右日期列中9月7日周日的显示,并排 除最左日期列中8月31日周日的显示)。在一些实施方案中,在日期范围前 移时保持所选择的日历对象576b的位置(例如,所选择的日历对象576b看 起来悬浮于用户界面575的表面上方,而日期范围看起来在所选择的日历对 象576b下方向前滑动)。例如,所选择的日历对象576b的位置保持在最左 日期列中,而用户界面575从在最左日期列中显示9月6日周六(图5OO) 更新为如图5PP中所示在最左日期列中显示9月7日周日。因此,所选择的 日历对象576b弹跳到9月7日周日的相应弹跳位置。在一些实施方案中,根 据所选择的日历对象576b弹跳到相应弹跳位置,设备100生成触觉输出578b (例如,增益为0.4的高频微震动(270Hz))。
图5QQ示出用户界面575从图5PP中的用户界面575的转变。具体地 讲,图5QQ示出响应于停止检测用户输入577(例如,响应于检测到包括接 触抬起的用户输入577的第四部分)而出现的用户界面575。响应于停止检 测用户输入577,设备100通过以下方式在视觉上指示所选择的日历对象576b 的取消选择(例如,对应于丢弃图5QQ中指示的相应位置中所选择的日历对 象576b):停止在其先前位置(例如,如图5PP中所示)中显示日历对象576(例如,重影对象)和/或改变所选择的日历对象576b的外观以便看起来未 选择(例如,显示日历对象576代替所选择的日历对象576b,并且停止显示 所选择的日历对象576b),使得日历对象576看起来已移动。在一些实施方 案中,根据所选择的日历对象576b被丢弃(例如,日历对象576被移动), 设备100生成触觉输出578c(例如,增益为0.6的高频微震动(270Hz))。
图5RR-5SS示出根据一些实施方案用于相对于重新布置阵列中的阵列 元素而生成触觉输出的示例性用户界面。在图5RR中,用户界面580a包括 示例性home屏幕界面,其用于显示元素(例如,应用图标)的阵列,包括 被标记为“地图”的应用图标582以及被标记为“股市”的应用图标583。 该元素阵列包括多个预先确定的弹跳位置,它们对应于用于显示阵列元素的 多个位置。如图5RR中所示,在对应于用户界面580a中的应用图标582的 触摸屏112上的位置处检测到用户输入581(例如,接触)。在一些实施方 案中,通过使用附录B中所述的UICollectionView类来生成用户界面580a。
图5SS示出用户界面580a从图5RR中的用户界面580a的一系列转变。 用户界面580a的该系列转变包括分别对应于用户输入581第一部分、第二部 分、第三部分和第四部分的用户界面580b,580c,580d和580e。在图5SS中, 时间T=t0对应于如图5RR中所示且上文参考该图所述的用户界面580a。在 时间T=t1时,用户界面580b示出响应于用户输入581的第一部分(例如, 长按压手势)而选择应用图标582。在一些实施方案中,设备100在视觉上 指示选择了应用图标582(例如,通过阴影应用图标582和/或放大应用图标 582)。任选地,在一些实施方案中,响应于用户输入581的第一部分选择应 用图标582,设备100生成如触觉输出图584中所示的触觉输出584b(例如, 增益为1.0的高频微震动(270Hz))以指示已选择应用图标582。在一些实施 方案中,在选择了应用图标582时,设备100提供用户界面580b对应于阵列 元素重新布置模式的视觉指示(例如,通过以动画方式显示一个或多个应用 图标,诸如通过使用如579处指示的摇晃动画)。
在一些实施方案中,在选择了应用图标582时,检测到用户输入581的 第二部分。例如,用户输入581的第二部分包括继续接触,之后是该接触向 左朝向“股市”应用图标583的移动。在时间T=t2时,用户界面580c示出根 据在用户输入581的第二部分期间用户输入581的移动,应用图标582向左 移动并越过应用图标583。因此,应用图标582显示于应用图标583的至少 一部分上方。
在时间T=t3时,用户界面580d示出用户输入581朝左的继续移动。根 据用户输入581的继续移动,应用图标582移动到对应于未选择的应用图标 583的先前位置(例如,如用户界面580c中所示)的预先确定的弹跳位置。 在一些实施方案中,对应于未选择的应用图标583的先前位置(例如,如用 户界面580a中所示)的预先确定的弹跳位置变为空白。因此,在一些实施方 案中,未选择的应用图标583向右移动到应用图标583所空出的预先确定的弹跳位置。在一些实施方案中,结合所选择的应用图标582移动到未选择的 应用图标583先前占据的预先确定的弹跳位置,设备100生成触觉输出584d (例如,增益为1.0的高频微震动(270Hz))。
在时间T=t4时,设备100已停止检测用户输入581(例如,设备100已 检测到用户输入581的第四部分,包括接触的抬起),同时所选择的应用图 标582处于预先确定的弹跳位置,如对应于时间T=t3的用户界面580d中所 示。因此,应用图标582固定到应用图标583先前占据的位置中并在该位置 中显示(例如,作为该阵列中未选择的应用图标),而应用图标583在应用 图标582先前占据的位置中显示(例如,应用图标582和应用图标583在交 换位置中显示)。任选地,在一些实施方案中,响应于应用图标582固定到 该阵列中,设备100生成触觉输出584e(例如,增益为0.6的高频微震动 (270Hz))以指示已丢弃应用图标582。
图5TT-5UU示出基于用户输入的特征强度而变化的触觉输出。图5TT 示出用户界面590a,其包括电子邮件应用(例如,电子邮件客户端模块140, 图1A和3)中的电子邮件概要项列表的示例性用户界面,以及在对应于电子 邮件概要项列表中的电子邮件592的触摸屏112上的位置处检测到的用户输 入591(例如,接触)的第一部分。接触的特征强度高于检测阈值强度IT0 且低于提示阈值强度ITH,如强度计596所指示。响应于检测到用户输入591, 设备100显示视觉指示(例如,突出显示)以指示选择了电子邮件592。
图5UU示出用户界面590a从图5TT中的用户界面590a的一系列转变。 用户界面590a的该系列转变包括对应于用户输入591的特征强度增加的用户 界面590b,590c和590d。在图5UU中,在时间T=t0时显示如图5TT中所示 且上文参考该图所述的用户界面590a。在时间T=t1时,用户输入591的特征 强度已增加到提示阈值强度ITH。因此,设备100显示电子邮件592的提示 状态,如用户界面590b中所示。在一些实施方案中,用户输入591的特征强 度在t1与t2之间继续朝向轻按压阈值强度ITL增加。在一些实施方案中,当 用户输入591的特征强度接近轻按压阈值强度ITL时,设备100生成触觉输 出594a(例如,作为所检测到的用户输入591的特征强度增加的触觉指示)。 在一些实施方案中,当用户输入591的特征强度朝向轻按压阈值强度ITL增 加时,设备100逐渐增强触觉输出594a的特征(例如,触觉输出594a的幅 度从零增加),如触觉输出图594中所示。在一些实施方案中,当用户输入 591的特征强度从零增加时,设备100逐渐增强触觉输出594a的特征。在一 些实施方案中,当用户输入591的特征强度从提示阈值强度ITH增加时,设 备100逐渐增强触觉输出594a的特征(例如,如触觉输出图594中所示)。
在时间T=t2时,用户输入591的特征强度跨越轻按压阈值强度ITL。根 据用户输入591的特征强度跨越轻按压阈值强度ITL,用户界面590c示出对 应于电子邮件592的信息预览(例如,电子邮件592的内容的简短预览)的 显示。在一些实施方案中,当用户输入591的特征强度达到轻按压阈值强度 ITL时,设备100生成触觉输出594b(例如,离散轻击,诸如增益为1.0的定 制微震动(200Hz))。
在一些实施方案中,用户输入591的特征强度在t2与t3之间继续朝向深 按压阈值强度ITD增加。在一些实施方案中,当用户输入591的特征强度接 近深按压阈值强度时,设备100生成触觉输出594c(例如,作为所检测到的 用户输入591的特征强度增加的触觉指示)。在一些实施方案中,设备100 逐渐增强触觉输出594c的特征(例如,触觉输出594c的幅度从零增加), 如触觉输出图594中所示。
在时间T=t3时,用户输入591的特征强度跨越深按压阈值强度ITD。根 据用户输入591的特征强度跨越深按压阈值强度ITD,用户界面590d示出电 子邮件592的显示(例如,电子邮件592的内容预览扩展为电子邮件592的 全屏显示)。在一些实施方案中,当用户输入591的特征强度达到深按压阈 值ITD时,设备100生成触觉输出594d(例如,离散轻击,诸如增益为1.0 的定制全震动(150Hz))。
图5VV-5YY示出用于显示用户界面变化并生成对应于用户界面事件的 触觉输出的示例性用户界面和时序图。
图5VV示出用于响应于用户输入(例如,响应于触摸输入对用户界面的 直接操纵)而显示一个或多个用户界面变化并生成对应于用户界面事件的触 觉输出的示例性用户界面和时序图。在一些实施方案中,响应于用户输入而 立即发起所述一个或多个用户界面变化的显示。例如,在图5VV中,用户界 面570c是如上文参考图5JJ-5KK所述的时钟列表的用户界面。根据在时间t0时检测到的用户输入571的向上移动,设备100发起用户界面570c变化的显 示,包括所选择的列表元素572向上移动到未选择的列表元素573先前占据 的位置,以及未选择的列表元素573向下移动到所选择的列表元素572先前 占据的位置。此外,根据在时间t0时检测到的用户输入571的向上移动,设 备100发起对应于所选择的列表元素572移动到预先确定的弹跳位置(例如, 对应于未选择的列表元素573的先前位置)的触觉输出574d的生成,如触觉 输出图574-2中所示。在一些实施方案中,在经过了第一时间间隔ΔT1(从t0到t1)之后,用户界面570c的所述一个或多个变化在时间T=t1时显示为用户界面570d。在一些实施方案中,在经过了与触觉输出的生成相关联的第二时 间间隔ΔT2(从t0到t2)之后,在时间T=t2时发生触觉输出574d的生成。在 一些实施方案中,第二时间间隔ΔT2(例如,50-200ms)长于第一时间间隔 ΔT1(例如,5ms)。在一些实施方案中,相比于与显示用户界面的变化相关 联的延迟,触觉输出的生成与更长的延迟相关联。
在一些实施方案中,与用户界面事件(例如,与响应于触摸输入而对用 户界面的直接操纵无关的用户界面事件)相关联的一个或多个用户界面变化 的显示被延迟,使得所述一个或多个用户界面变化的显示与对应于用户界面 事件的触觉输出的生成同时进行。
例如,图5WW示出根据不对用户输入作出响应的用户界面事件(例如, 作为与响应于触摸输入而对用户界面的直接操纵无关的或者不响应于该直接 操纵的警示或其他通知的用户界面事件)进行用户界面变化的显示和触觉输 出的生成。在时间T=t0时,用户界面5100a包括用于编写电子邮件消息的用 户界面。文本5101表示用户界面5100a中的文本的先前(例如,最近)输入 部分。在时间T=t1时,检测到设备100的移动。在一些实施方案中,设备100 的移动符合对应于用户界面事件的预定义输入模式标准(例如,来回摇晃设 备的模式),该用户界面事件包括撤销先前执行的操作(例如,移除先前输 入的文本的一部分)。如图5WW中所示,在时间t1时检测到的设备100的 移动对应于用于移除先前输入的文本5101(例如,通过显示撤销提示界面 5100b)和用于生成触觉输出5102的用户界面事件。响应于在时间t1时检测 到设备100的移动,设备100在时间t1时发起触觉输出5102的生成。与之结 合,在一些实施方案中,设备100将发起用户界面5100a的所述一个或多个 变化的显示延迟达延迟时间间隔T延迟(例如,在经过了延迟时间间隔T延迟 之后,设备100在时间t2时发起显示撤销提示界面5100b)。在一些实施方 案中,在经过了与触觉输出的生成相关联的延迟时间间隔ΔT2之后,在时间 t3时发生触觉输出5102的生成。因此,在一些实施方案中,用户界面5100a 的所述一个或多个变化的显示(例如,撤销提示界面5100b的显示)与触觉 输出5102的生成同步(例如,在时间t3时)。
在另一个示例中,图5XX示出根据用户界面事件进行用户界面变化的显 示和触觉输出的生成,该用户界面事件包括与响应于触摸输入而对用户界面 的直接操纵无关的通知。在时间T=t0时,用户界面5105包括设备100的锁 屏的用户界面。在时间T=t1时,接收(例如,从设备100外部的信息源)输 入5106(例如,所接收的日历事件邀请的通知)。响应于在时间t1时接收到 输入5106,设备100在时间t1时发起触觉输出5107的生成。与之结合,设备100将发起用户界面5105的变化的显示(例如,日历事件邀请示能表示 5108在用户界面5105上的显示)延迟达延迟时间间隔T延迟(例如,在经过 了延迟时间间隔T延迟之后,设备100在时间t2时发起显示日历事件邀请示能 表示5108)。在一些实施方案中,在经过了与触觉输出的生成相关联的延迟 时间间隔ΔT2之后,在时间t3时发生触觉输出5107的生成。因此,在一些实 施方案中,用户界面5105的所述一个或多个变化的显示(例如,日历事件邀 请示能表示5108的显示)与触觉输出5107的生成同步(例如,在时间t3时)。
在又一个示例中,图5YY示出了根据用户界面事件进行用户界面变化的 显示和触觉输出的生成,该用户界面事件包括根据用户发起的交易的完成而 发起的通知。在时间T=t0时,用户界面5110a包括提示用户提供认证(例如, 指纹传感器上的手指接触,被示出为用户输入5111)以完成交易的用户界面。 在时间T=t1时,设备100接收输入5112,该输入包括用于完成交易的认证。 响应于在时间t1时接收到输入5112,设备100在时间t1时发起触觉输出5113 的生成。与之结合,设备100将发起用户界面5110a的变化的显示(例如, 显示确认交易完成的用户界面5110b)延迟达延迟时间间隔T延迟(例如,在 经过了延迟时间间隔T延迟之后,设备100在时间t2时发起显示用户界面 5110b)。在一些实施方案中,在经过了与触觉输出的生成相关联的延迟时间 间隔ΔT2之后,在时间t3时发生触觉输出5113的生成。因此,在一些实施方 案中,用户界面5110a的所述一个或多个变化的显示(例如,用户界面5110b 的显示)与触觉输出5113的生成同步(例如,在时间t3时)。
图5ZZ示出根据一些实施方案用于基于触觉输出发生器的状态来生成触 觉输出的时序图。在一些实施方案中,触觉输出控制器5120(例如,触觉反 馈控制器161,图1A)接收到一个或多个触觉输出触发信号。在一些实施方 案中,响应于触觉输出触发信号,触觉输出控制器5120将控制信号传输到一 个或多个触觉输出发生器5121(例如,一个或多个触觉输出发生器167,图 1A)。响应于控制信号,触觉输出发生器5121生成触觉输出。
在一些实施方案中,根据与生成触觉输出相关联的延迟,触觉输出发生 器5121在接收到触觉输出触发信号后的一段时间之后生成触觉输出。触觉输 出触发信号的接收与对应触觉输出的生成之间的时间段根据触觉输出发生器5121的状态而变化。例如,如图5ZZ中所示,如果在触觉输出发生器5121 处于不活动状态时接收到触觉输出触发信号,则在接收到触觉输出触发信号 后的时间段ΔTA(例如,200ms)之后生成触觉输出。在一些实施方案中,如 果在触觉输出发生器5121处于低延迟状态(例如,预热状态或活动状态)时 接收到触觉输出触发信号,则在小于ΔTA的时间段之后生成触觉输出。例如, 图5ZZ示出如果在触觉输出发生器5121处于预热状态时接收到触觉输出触 发信号,则在接收到触觉输出触发信号后的时间段ΔTB(例如,100-150ms) 之后生成触觉输出。在一些实施方案中,如果在触觉输出发生器5121处于活 动状态时接收到触觉输出触发信号,则在接收到触觉输出触发信号后的时间 段ΔTC(例如,50ms)之后生成触觉输出。在一些实施方案中,与活动状态相关联的时间段小于与预热状态相关联的时间段。
图5AAA-5CCC示出用于根据不同类型用户界面事件(例如,成功、失 败和警告事件)的用户界面事件来生成触觉输出的示例性用户界面和时序。
图5AAA示出针对成功事件生成的一个或多个触觉输出的示例。图 5AAA包括在时间T=t0时显示的用于输入连接到无线网络(例如, “HomeWireless”)的认证凭据的用户界面5130。在时间T=t1时,根据确定 用户界面5130中输入的口令的认证成功,显示用户界面5131(例如,指示 成功连接到所请求的无线网络“HomeWireless”)并且生成对应于成功事件 的触觉输出5132(例如,增益为0.7的中频全震动(200Hz),之后是增益为1.0 的高频小震动(270Hz))。
图5BBB示出针对失败事件生成的一个或多个触觉输出的示例。图5BBB 包括在时间T=t0时显示的用于输入连接到无线网络(例如,“HomeWireless”) 的认证凭据的用户界面5130。在时间T=t1时,根据确定用户界面5130中输 入的口令的认证失败,显示用户界面5133(例如,指示对所请求的无线网络 “HomeWireless”输入了不正确的口令)并且生成对应于失败事件的触觉输 出5134(例如,增益为0.75-0.85的高频小震动(270Hz),之后是增益为0.65 的中频全震动(200Hz),之后是增益为0.75的低频全震动(150Hz))。
图5CCC示出针对警告事件生成的一个或多个触觉输出的示例。图5CCC 包括如上文参考图5WW所述的用于编写电子邮件消息的用户界面5135。在 时间T=t0时,检测到设备100的移动(例如,与撤销先前操作的请求相对应 的来回摇晃设备的模式)。在时间T=t1时,根据撤销先前操作的请求,显示 撤销提示界面5100b(如上文参考图5WW所述),并且生成对应于警告事 件的触觉输出5135(例如,增益为0.9的高频全震动(300Hz),之后是增益为 0.9的定制全震动(270Hz))。
图5DDD-5GGG示出根据一些实施方案的示例性用户界面,其用于根据 响应于用户输入而在用户界面中执行的操作的量值来生成触觉输出。具体地 讲,图5DDD-5GGG示出根据用户输入跨越边界的移动,在可变速率滑擦期 间生成的触觉输出。
图5DDD示出媒体内容播放器的用户界面5140,该用户界面包括滑块控 件5141,包括指示在设备上正播放的内容的当前位置的可调节进度指示符 5142。在一些实施方案中,用户界面5140包括用于控制媒体内容播放器中的 内容的回放的多个其他媒体内容播放器控件。图5DDD示出在触摸屏112上 的与滑块控件5141中的进度指示符5142的初始位置相对应的位置处初始检 测到的用户输入5143。图5DDD还示出与滑块控件5141相对应的用户输入 5143远离其初始位置的移动(例如,用户输入5143包括拖动手势,该拖动 手势包括初始接触,之后是该接触的移动)。在一些实施方案中,边界5144, 5145和5146将用户界面5140分成对应于不同滑擦速率的区域,以便调节进 度指示符5142在滑块控件5141中的位置。在一些实施方案中,通常不向用 户显示边界5144,5145和5146。在一些实施方案中,在用户输入5143高于 边界5144时,进度指示符5142在滑块控件5141中的位置移动的量与用户输 入5143在触摸屏112上的移动(包括与滑块控件平行的移动)的水平分量相 同(有时称为“全速滑擦”)。在一些实施方案中,在用户输入5143介于边 界5144与边界5145之间时,进度指示符5142在滑块控件5141中的位置移 动的量是与滑块控件5141平行的、用户输入5143在触摸屏112上的移动的 水平分量的分数(例如,二分之一或相当于50%)(有时称为“半速度滑擦”)。 在一些实施方案中,在用户输入5143介于边界5145与边界5146之间时,进 度指示符5142在滑块控件5141中的位置移动的量是与滑块控件5141平行 的、用户输入5143在触摸屏112上的移动的水平分量的较小分数(例如,四 分之一或相当于25%)(有时称为“四分之一速度滑擦”)。在一些实施方 案中,在用户输入5143低于边界5146时,进度指示符5142在滑块控件5141 中的位置移动的量是与滑块控件5141平行的、用户输入5143在触摸屏112上的移动的水平分量的甚至更小分数(例如,八分之一或相当于12.5%)(有 时称为“精细速度滑擦”)。应当指出,此处所用的分数滑擦速率(50%、25%和12.5%)仅仅为示例,并且还可使用随着用户输入与滑块控件5141之 间的竖直距离增加而渐进下降的不同滑擦速率。
在一些实施方案中,设备100根据用户输入5143跨越相应边界来生成 触觉输出。在一些实施方案中,根据与用户界面5140中的操作相对应的用户 输入5143的特征来生成触觉输出。例如,根据用户输入5143在跨越与滑擦 速率变化相对应的相应边界时的速度来生成触觉输出。在一些实施方案中, 在用户输入5143高速跨越相应边界时生成较强的触觉输出。在一些实施方案 中,在用户输入5143低速跨越相应边界时生成较轻的触觉输出。
图5EEE示出用户输入5143相对于其初始位置(例如,如图5DDD中所 示)向下、朝右远离滑块控件5141并跨越边界5144的移动。根据用户输入 5143跨越边界5144,设备100生成触觉输出5148。根据用户输入5143的移 动速度高于中等速度阈值VM且低于高速度阈值VH(如接触速度计5147所 指示),触觉输出5148生成为中等触觉输出(例如,增益为0.4的中频微震 动(150Hz))。
图5FFF示出用户输入5143相对于如图5EEE中所示的其位置向下、朝 右进一步远离滑块控件5141并跨越边界5145的进一步移动。根据用户输入 5143跨越边界5145,设备100生成触觉输出5149。根据用户输入5143的移 动速度高于高速度阈值VF(如接触速度计5147所指示),触觉输出5149生 成为强触觉输出(例如,增益为0.7的中频微震动(150Hz))。
图5GGG示出用户输入5143相对于如图5FFF中所示的其位置向下、朝 右进一步远离滑块控件5141并跨越边界5146的甚至进一步移动。根据用户 输入5143跨越边界5146,设备100生成触觉输出5150。根据用户输入5143 的移动速度低于中等速度阈值VM且高于移动检测阈值V0(例如,零速度) (如接触速度计5147所指示),触觉输出5150生成为轻触觉输出(例如, 增益为0.1的中频微震动(150Hz))。
图5HHH-5III示出根据检测到连续用户交互及根据用于生成触觉输出的 一个或多个触觉输出发生器的状态来生成触觉输出的时序图。具体地讲,图 5HHH示出具有在时间T=t0时处于初始位置的位置指示符5161的滑块5160。 用于根据滑块5160的位置指示符5161跨越滑块5160上的相应标记来生成一 个或多个触觉输出的触觉输出发生器初始处于低功率状态,如发生器状态图 5164中所示。根据使位置指示符5161移动到时间T=t1时所示的位置的用户 交互的第一部分,位置指示符5161接近但未跨越标记5162。触觉输出发生器保持处于低功率状态(例如,触觉输出发生器的状态保持或不改变)。在 时间T=t2时,根据用户交互的第二部分,位置指示符5161跨越标记5162。 因此,在时间t2时发起触觉输出的生成,如触觉输出图5165中所示。在一些 实施方案中,根据与低功率状态相关联的延迟,在时间t2时接收到触觉输出 触发信号后的时间段ΔTA(例如,200ms)之后,在时间t=t4时生成触觉输出 5163。如图5HHH中所示,到时间t4时(此时生成触觉输出5163),位置指 示符5161已根据用户输入的继续移动来移动通过标记5162。
在一些实施方案中,在期待生成触觉输出时,诸如根据接近阈值的用户 输入的移动,改变触觉输出发生器的状态。例如,图5III示出具有在时间T=t0时处于初始位置的位置指示符5161的滑块5160。用于根据滑块5160的位置 指示符5161跨越滑块5160上的相应标记来生成一个或多个触觉输出的触觉 输出发生器初始处于低功率状态,如发生器状态图5166中所示。根据使位置 指示符5161移动到时间T=t1时所示的位置的用户交互的第一部分,位置指 示符5161接近但未跨越标记5162。在一些实施方案中,响应于位置指示符5161接近标记5162(例如,在期待位置指示符5161跨越标记5162、因此将 生成触觉输出时),触觉输出发生器的状态从低功率状态改变为低延迟状态 (或另选地,在一些实施方案中,活动状态)。在时间T=t2时,根据用户交 互的第二部分,位置指示符5161跨越标记5162。因此,在时间t2时发起触 觉输出的生成,如触觉输出图5167中所示。在一些实施方案中,根据与低延 迟状态相关联的延迟,在时间t2时接收到触觉输出触发信号后的时间段ΔTB (例如,100-150ms)之后,在时间t=t3时生成触觉输出5168。在一些实施方 案中,与低延迟状态相关联的时间段ΔTB小于与低功率状态相关联的时间段 ΔTA。如图5III中所示,生成触觉输出5168时的时间t3在如图5HHH中所示 生成触觉输出5163时的时间t4之前发生。在一些实施方案中,根据改变触觉 输出发生器的状态,以较低延迟来生成触觉输出。此外,在图5III中,位置 指示符5161已根据用户输入以比图5HHH中更小的范围继续移动来移动通过标记5162。
图5JJJ示出根据一些实施方案在强制执行重复触觉输出之间的最小时间 时电子设备(例如,便携式多功能设备100,图1A)生成触觉输出序列。触 觉输出图5170a示出触觉输出的触发信号以及所生成的与第一类型触觉输出 相关联的触觉输出。触觉输出图5170b示出触觉输出的触发信号以及所生成 的与第二类型触觉输出相关联的触觉输出。在时间t1时,触发第一类型触觉 输出的生成(例如,设备生成触发信号,或设备从外部源接收触发信号), 如触觉输出图5170a中所示。作为响应,设备在t1时的触发信号之后且在t2时的后续触发信号之前的时间点处生成触觉输出5171。在时间t2时,触发第 一类型触觉输出的第二实例。在一些实施方案中,设备确定响应于t2时的触 发信号进行的触觉输出的预期生成在自触觉输出5171的生成(例如,所生成 的第一类型触觉输出的最近实例)起预先确定的时间内。因此,设备放弃响 应于t2时的触发信号来生成触觉输出。
类似地,在时间t3时,触发第一类型触觉输出的第三实例,如触觉输出 图5170a中所示。作为响应,设备在t3时的触发信号之后且在t4时的后续触 发信号之前的时间点生成触觉输出5172(例如,根据确定第一类型触觉输出 的最近生成的触觉输出5171在自触觉输出5172的预期生成起至少预先确定 的时间)。在时间t4时,触发第一类型触觉输出的第四实例,如触觉输出图 5170a中所示。此外,在时间t4时,触发第二类型触觉输出的第一实例,如 触觉输出图5170b中所示。在一些实施方案中,设备确定响应于t4时的触发 信号进行的第一类型触觉输出的预期生成在自触觉输出5172的生成(例如, 所生成的第一类型触觉输出的最近实例,相对于t4时的第一类型触觉输出的 触发信号而确定)起预先确定的时间内。因此,设备放弃响应于t4时的第一 类型触觉输出的触发信号来生成触觉输出。在一些实施方案中,设备响应于 t4时的第二类型触觉输出的触发信号来生成触觉输出5176(例如,不考虑第 一类型触觉输出的时序)。在一些实施方案中,根据确定触觉输出5176的生成将在自第二类型触觉输出的最近实例的生成起至少预先确定的时间,设备 生成触觉输出5176。
在时间t5时,触发第一类型触觉输出的第五实例,如触觉输出图5170a 中所示。作为响应,设备在t5时的触发信号之后且在t6时的后续触发信号之 前的时间点生成触觉输出5173(例如,根据确定第一类型触觉输出的最近生 成的触觉输出5172在自触觉输出5173的预期生成起至少预先确定的时间)。 在时间t6时,触发第一类型触觉输出的第六实例,如触觉输出图5170a中所 示。在一些实施方案中,设备确定响应于t6时的触发信号进行的触觉输出的 预期生成将在自触觉输出5173的生成(例如,所生成的第一类型触觉输出的 最近实例)起至少预先确定的时间。因此,设备响应于t6时的触发信号来生 成触觉输出5174。随后,在时间t7时,触发第一类型触觉输出的第七实例。 在一些实施方案中,设备确定响应于t7时的触发信号进行的触觉输出的预期 生成在自触觉输出5174的生成(例如,所生成的第一类型触觉输出的最近实 例)起预先确定的时间内。因此,设备放弃响应于t7时的触发信号来生成触 觉输出。
在时间t8时,触发第一类型触觉输出的第八实例,如触觉输出图5170a 中所示。此外,在时间t8时,触发第二类型触觉输出的第二实例,如触觉输 出图5170b中所示。在一些实施方案中,设备确定响应于t8时的触发信号进 行的第一类型触觉输出的预期生成在自触觉输出5174的生成(例如,所生成 的第一类型触觉输出的最近实例,相对于t8时的第一类型触觉输出的触发信 号而确定)起至少预先确定的时间。因此,设备响应于t8时第一类型触觉输 出的触发信号来生成触觉输出5175。此外,设备响应于t8时的第二类型触觉 输出的触发信号来生成触觉输出5177(例如,不考虑第一类型触觉输出的时 序)。在一些实施方案中,根据确定触觉输出5177的预期生成在自第二类型 触觉输出的最近实例(例如,触觉输出5176)的生成起至少预先确定的时间, 设备生成触觉输出5177。
图5KKK示出用于控制一个或多个触觉输出发生器(例如,一个或多个 触觉输出发生器167,图1A)的状态的方法5180的概念流程图。在一些实 施方案中,方法5180通过电子设备(例如,便携式多功能设备100,图1A) 的独立于应用的模块执行。
在一些实施方案中,独立于应用的模块等待(5182)来自特定于应用的模 块的输入(例如,用于生成触觉输出的触发信号,诸如与触觉输出相关联的 用户输入)。在一些实施方案中,在独立于应用的模块等待输入时,触觉输 出发生器处于不活动状态。
在一些实施方案中,独立于应用的模块接收(5184)来自特定于应用的模 块的输入。响应于接收到来自特定于应用的模块的输入,独立于应用的模块 确定(5186)是否准备一个或多个触觉输出发生器以便生成触觉输出(例如, 该输入是否符合触觉输出生成标准)。
根据确定不应准备一个或多个触觉输出发生器(5186-否),独立于应用 的模块返回到等待状态(5182)以等待附加输入,并且触觉输出发生器保持不 活动状态。
根据确定应准备所述一个或多个触觉输出发生器(5186-是)(例如,在 期待生成触觉输出时),独立于应用的模块确定(5188)是否通过将触觉输出 发生器设定为预热状态(例如,与相比于不活动状态更低的延迟相关联)或 活动状态(例如,与相比于不活动状态和预热状态两者更低的延迟相关联) 来准备触觉输出发生器。
根据确定触觉输出应设定为预热状态(5188-预热),独立于应用的模块 通过将触觉输出发生器设定(5190)为预热状态来准备触觉输出发生器。根据 确定触觉输出应设定为活动状态(5188-活动),独立于应用的模块通过将触 觉输出发生器设定(5192)为活动状态来准备触觉输出发生器。
接下来,在一些实施方案中,独立于应用的模块确定(5194)是否将触觉 输出发生器从预热或活动状态返回到不活动状态(例如,是否离开相应准备 状态)。根据确定离开准备状态(5194-是)(例如,电子设备处于操作的电 池节电模式,或经过了期间未生成触觉输出的预先确定的超时时间段),独 立于应用的模块返回到等待状态(5182)。根据确定未离开准备状态(5194-否) (例如,在请求准备触觉输出发生器起尚未经过预先确定的超时时间段,或 自最近在先触觉输出的生成起尚未经过预先确定的时间段),独立于应用的 模块保持触觉输出发生器的相应准备状态(例如,预热状态或活动状态)。
图6A-6D是示出根据一些实施方案的基于用户交互模型来生成触觉输 出的方法600的流程图。在具有显示器、一个或多个输入设备(例如,触敏 表面和/或用于检测与触敏表面的接触强度的一个或多个传感器)和一个或多 个触觉输出发生器的电子设备(例如,图3的设备300或图1A的便携式多 功能设备100)处执行方法600。在一些实施方案中,显示器是触摸屏显示器, 并且触敏表面在显示器上或与显示器集成。在一些实施方案中,显示器与触 敏表面是分开的。方法600中的一些操作任选地被组合,和/或一些操作的顺 序任选地被改变。
如下所述,方法600提供使用独立于应用的软件模块来提供触觉输出的 增强方式。使用独立于应用的软件基于来自应用软件的信息来提供触觉输出, 这提供了在使用各种软件应用时提供一致用户体验的通用用户界面框架。向 用户提供通用用户界面框架,这增强了此类软件应用及执行此类软件应用的 设备的可用性。继而,这增强了设备的可操作性并且使得用户设备界面更有 效(例如,通过帮助用户提供正确输入并且减少在操作设备/与设备交互时的 用户错误和/或非预期操作)。此外,该方法减小软件应用的大小并且使得此 类软件应用的执行更快。对于电池驱动的电子设备,确保用户更快且更有效 地使用软件应用,可节省功率并延长电池充电之间的时间。
在一些实施方案中,设备存储(例如,在存储器中)可供电子设备上的 多个软件应用(例如,第一软件应用,诸如应用1(136-1),以及一个或多个 其他软件应用,诸如图1D中的应用2(136-2))使用的应用软件(例如,第 一软件应用,诸如图1D中的应用1(136-1))和独立于应用的软件(例如, 图1D中的独立于应用的软件模块260)(例如,电子设备存储所述多个软件 应用)。
设备在显示器上显示(602)第一软件应用的用户界面(例如,图5A中所 示的设置应用的用户界面)。用户界面包括(604)已为其分配由独立于应用的 模块提供的多个用户交互模型中的用户交互模型的多个元素(例如,开关对 象502、滑块对象504和滑块对象506)。所述多个元素包括已为其分配第一 用户交互模型的第一元素(例如,滑块对象502)。所述多个元素具有由第 一软件应用的特定于应用的模块提供的内容(例如,滑块对象502包括由设 置应用提供的扬声器图标)。
在一些实施方案中,设备使用预定义的应用编程接口(API)将第一用户交 互模型分配(606)给第一元素。例如,设备使用独立于应用的软件模块的API 将特定用户交互模型分配给第一元素。
第一用户交互模型定义(608)用户界面如何对指向用户界面的第一元素 的输入作出响应。例如,第一用户交互模型定义是否生成触觉输出和/或用于 生成触觉输出的条件。在一些实施方案中,第一用户交互模型还定义第一元 素如何响应于用户输入而在视觉上更新(例如,移动滑块、打开或关闭开关 等)。
在显示用户界面时,设备检测(610)经由所述一个或多个输入设备进行的 指向用户界面的第一元素的输入(例如,图5C中指向滑块505的输入509)。
响应于检测到输入(612),设备基于输入的特征(例如,移动量值、移动 方向、开始位置、结束位置、强度量值、强度变化率)来更新(614)显示器上 的用户界面。例如,滑块505的位置响应于输入509的变化而改变,如图5D 中所示。
在一些实施方案中,设备基于输入的特征和第一用户交互模型来更新 (616)显示器上的用户界面。
另外响应于检测到输入(612),并根据确定输入符合第一用户交互模型所 指定的触觉输出标准,设备生成(618)对应于输入的第一触觉输出。
在一些实施方案中,第一元素包括(620)至少部分地基于由第一软件应用 的特定于应用的模块提供的信息而生成的滑块对象(例如,UISlider),并且 第一用户交互模型指定根据用户利用触摸输入对滑块对象的操纵来生成触觉 输出(例如,第一触觉输出)。
在一些实施方案中,响应于选择滑块对象的调制类型的触摸输入,设备 生成(622)预定义的调制选择触觉输出。例如,在图5B中,响应于输入503 而生成预定义触觉输出。在另一个示例中,开关对象或选项列表被配置为用 于选择滑块对象的调制类型(例如,滑块对象是音量滑块还是平衡滑块), 并且响应于在对应于开关对象或选项列表的位置处的触摸输入,设备生成预 定义的调制选择触觉输出。
在一些实施方案中,第一用户交互模型指定(624)根据滑块对象的调制类 型以及根据用户利用触摸输入对滑块对象的操纵而调制的第一软件应用的参 数来生成第一触觉输出。例如,如图5C-5E中所示,根据确定滑块对象的调 制类型是音量滑块,触觉输出的量值随着滑块对象所表示的音量增加而增加。 根据确定滑块对象的调制类型是平衡滑块,基于滑块的位置来调节触觉输出 的平衡,如图5G-5H中所示。
在一些实施方案中,第一用户交互模型指定(626)根据滑块对象的可移动 部分到达末端位置来生成不同的触觉输出(例如,在图5F中,根据滑块到达 滑块的末端位置来生成不同的触觉输出513)。
在一些实施方案中,第一元素包括(628)至少部分地基于由第一软件应用 的特定于应用的模块提供的信息而生成的开关对象(例如,UISwitch),并 且第一用户交互模型指定在输入对应于改变开关对象状态的动作时生成第一 触觉输出(例如,第一输入使得开关从先前状态切换到与先前状态不同的新 状态,诸如从关到开或反之亦然,如图5A-5B中所示)。
在一些实施方案中,第一元素包括(630)至少部分地基于由第一软件应用 的特定于应用的模块提供的信息而生成的值选择对象(例如,使用附录B中 所述的UIPickerView类或UIDatePicker类或它们的实例),并且第一用户交 互模型指定在输入对应于改变使用值选择对象选择的值的动作时生成第一触 觉输出。例如,如果值选择对象对应于具有不同值的序列的可滚动轮或列表, 则当第一输入使得值选择对象滚动通过不同值的序列(例如,图5K-5O中所 示的时间转盘)时设备生成触觉输出的序列。在一个示例中,该序列中的不 同值是日期值,例如,指定日期或时间的年、月、日、小时或分钟的值。
在一些实施方案中,第一元素包括响应于达到刷新阈值的下拉手势而刷 新(632)的内容(例如,使用附录B中所述的UIRefreshControl类或其实例)。 第一用户交互模型指定根据确定输入对应于达到刷新阈值的下拉手势来生成 预定义的冲击触觉输出(例如,响应于达到刷新阈值的下拉手势而刷新内容, 如图5P-5T中所示)。
在一些实施方案中,第一元素包括(634)其尺寸响应于包括缩放手势的输 入而改变的区域或对象(例如,使用附录B中所述的 UIZoomEdgeFeedbackGenerator类或UIScrollView类或它们的实例)。第一用 户交互模型指定根据确定区域或对象的尺寸已达到预定义限度(例如,根据 确定区域或对象的尺寸(或相当于缩放比例因子)已达到预定义限度)来生 成预定义尺寸限度的触觉输出。例如,根据确定所显示的网页的尺寸响应于 张开手势而达到预定义限度来生成预定义尺寸限度的触觉输出,如图5Z-5CC 中所示。
在一些实施方案中,第一元素包括(636)至少部分地基于由第一软件应用 的特定于应用的模块提供的信息(例如,日历应用提供感兴趣的日期和时间 和/或图5LL-5QQ中所示的日历视图的日历条目)而生成的、具有按行和列 组织的单元格的表格(例如,使用附录B中所述的UITableView类或其实例)。 第一用户交互模型指定在输入从表格中的任何单元格移动到表格中的任何其 他单元格、或者从表格外部移动到表格内部的单元格(例如,输入从表格外 部移动到表格内部的单元格576b以选择单元格576b,如图5LL-5MM中所示) 时生成第一触觉输出。在一些实施方案中,在第一输入对应于拖动内容项的 拖动手势的情况下,当第一输入将对象移动到表格的单元格中并且对象“自 动地”在单元格中弹跳就位时,设备生成弹跳反馈触觉输出,其中该表格由 应用显示并且该应用控制或指定弹跳动作。
在一些实施方案中,第一元素包括(638)至少部分地基于由第一软件应用 的特定于应用的模块提供的信息而生成的、具有按行和列组织的单元格的表 格(例如,使用附录B中所述的UITableView类或其实例)。第一用户交互 模型指定在两行或更多行单元格响应于输入而重新排序时生成第一触觉输 出。例如,在列表中的两个或更多个条目重新排序时生成触觉输出,如图5KK 中所示。类似地,在一些实施方案中,在不同列中的两个或更多个条目在表 格中重新排序(例如,通过将日历视图中的日历条目移动到相邻列中的另一 个日历条目,使得这两个日历条目重新排序)时生成触觉输出。
在一些实施方案中,输入使得(640)第一软件应用在不同项目的集合(例 如,使用附录B中所述的UICollectionView类或其实例)中选择项目,使之 移动到第一元素内的预定义位置,并且第一用户交互模型指定结合移动到第 一元素内的预定义位置的所选择的项目而生成第一触觉输出(例如,在应用 图标582移动到预定义位置,即相邻应用图标583的位置时生成触觉输出, 如图5SS中所示)。在一些实施方案中,第一用户交互模型指定结合根据预 定义弹跳行为移动到预定义位置的所选择的项目而生成一个或多个触觉输 出。例如,当拖动手势将所选择的项目带到预定义弹跳就位位置(例如,预 定义网格中的网格位置)的预定义距离内时,所选择的项目弹跳就位。
在一些实施方案中,第一用户交互模型指定(642)在输入或根据输入操纵 的对象接近下一预定义状态(例如,用力按压手势)时生成第一触觉输出, 以及在输入或根据输入操纵的对象达到下一预定义状态时生成与第一触觉输 出不同的第二触觉输出(例如,在图5UU中,设备在输入强度接近强度阈值 ITL时生成触觉输出594a,并且在输入强度达到强度阈值ITL时生成触觉输出 594b)。在一些实施方案中,第一行为模型指定在第一触摸输入的强度达到 强度阈值序列的每一者时生成不同的触觉输出的序列。
根据确定输入不符合第一用户交互模型所指定的触觉输出标准,设备放 弃(644)第一触觉输出的生成(例如,如图5AA中所示,当区域或对象的尺寸 (或相当于缩放比例因子)尚未达到预定义限度时,不生成第一触觉输出, 诸如图5CC中所示的触觉输出564)。
在一些实施方案中,所述多个元素包括(646)已为其分配由独立于应用的 模块提供的所述多个用户交互模型中的第二用户交互模型的第二元素。在显 示用户界面时,设备经由所述一个或多个输入设备检测指向用户界面的第二 元素的第二输入;以及响应于检测到指向用户界面的第二元素的第二输入: 基于所检测到的第二输入的特征来更新显示器上的用户界面;根据确定第二 输入符合第二用户交互模型所指定的触觉输出标准,生成对应于第二输入的 第二触觉输出(例如,开关对象502上的轻击手势或水平轻扫手势切换开关 对象502的状态并且发起第二触觉输出的生成,从而指示开关对象502的状 态已切换);以及根据确定第二输入不符合第二用户交互模型所指定的触觉 输出标准,放弃第二触觉输出的生成(例如,开关对象502上的竖直轻扫手 势未切换开关对象502的状态并且未生成第二触觉输出)。
应当理解,图6A-6D中的操作被描述的特定次序仅仅是示例,并非旨在 指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到多 种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参考 本文所述的其他方法(例如,方法800,1000,1200,1400,1600,1800和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图6A-6D描述的方 法600。例如,上文参考方法600所述的触觉输出、滑块对象、开关对象、 值选择对象、内容刷新操作、缩放操作、滚动操作、表格操纵、以及选择和 移动用户界面对象,任选地具有本文参考本文所述的其他方法(例如,方法 800,1000,1200,1400,1600,1800和2000)描述的触觉输出、滑块对象、开关 对象、值选择对象、内容刷新操作、缩放操作、滚动操作、表格操纵、以及 选择和移动用户界面对象的特征中的一者或多者。为了简明起见,这里不再 赘述这些细节。
出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而, 上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。 根据以上教导内容,很多修改形式和变型形式都是可能的。例如,根据一些 实施方案,设备在显示器上显示第一软件应用的用户界面。通过以下方式生 成用户界面:向由独立于应用的模块提供的多个用户交互模板中的第一用户 交互模板填充由第一软件应用的特定于应用的模块提供的内容。第一用户交 互模板定义用户界面如何对指向用户界面的输入作出响应。在显示用户界面 时,设备经由所述一个或多个输入设备检测指向用户界面的输入。响应于检 测到该输入,设备基于所检测到的输入的特征(例如,移动量值、移动方向、 开始位置、结束位置、强度量值、强度变化率)和第一用户交互模板来更新 显示器上的用户界面;根据确定该输入符合第一用户交互模板所指定的触觉 输出标准,生成对应于该输入的第一触觉输出;以及根据确定该输入不符合 第一用户交互模板所指定的触觉输出标准,放弃第一触觉输出的生成。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图7示出根据各种所述实施方案的原理进行配置的 电子设备700的功能框图。该设备的功能块任选地由执行各种所述实施方案 的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当 理解,图7中所述的功能块任选地被组合或被分离为子块,以便实现各种所 描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的 任何可能的组合或分离或进一步限定。
如图7中所示,电子设备700包括被配置为显示用户界面的显示单元702 (例如,包括显示器112)、被配置为接收输入(例如,表面(诸如显示单 元702的显示表面)上的触摸输入)的一个或多个输入设备单元704、以及 与显示单元702和所述一个或多个输入设备单元704耦接的处理单元708。 在一些实施方案中,电子设备700还包括一个或多个触觉输出发生器单元 706,其被配置为生成一个或多个触觉输出,也耦接到处理单元708。在一些 实施方案中,处理单元708包括下列子单元中的一者或多者:显示使能单元 710、检测单元712、触觉输出使能单元714、分配单元716和确定单元718。
在一些实施方案中,处理单元708被配置为使能在显示单元702上显示 (例如,使用显示使能单元702)第一软件应用的用户界面,其中该用户界 面包括已为其分配由独立于应用的模块提供的多个用户交互模型中的用户交 互模型(例如,使用分配单元716)的多个元素,所述多个元素包括已为其 分配第一用户交互模型的第一元素,并且所述多个元素具有由第一软件应用 的特定于应用的模块提供的内容。在一些实施方案中,第一用户交互模型定 义用户界面如何对指向用户界面的第一元素的输入作出响应。在使能显示用 户界面时,处理单元708被配置为检测(例如,使用检测单元712)经由一 个或多个输入设备单元704进行的指向用户界面的第一元素的输入。响应于 检测到该输入,处理单元708基于所检测到的输入的特征来更新(例如,使 用显示使能单元710)显示单元上的用户界面。根据确定(例如,使用确定 单元718进行)该输入符合第一用户交互模型所指定的触觉输出标准,处理 单元708使能生成对应于该输入的第一触觉输出(例如,使用触觉输出使能 单元714)。根据确定(例如,使用确定单元718进行)该输入不符合第一 用户交互模型所指定的触觉输出标准,处理单元708放弃使能生成第一触觉 输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,处理单元708基于所检测到的输入的特征和第一用 户交互模型来更新(例如,使用显示使能单元710)显示单元702上的用户 界面。在一些实施方案中,处理单元708使用预定义的应用编程接口(API)将 第一用户交互模型分配(例如,使用分配单元716)给第一元素。
在一些实施方案中,所述多个元素包括已为其分配由独立于应用的模块 提供的所述多个用户交互模型中的第二用户交互模型(例如,使用分配单元716)的第二元素,并且在显示用户界面时,处理单元708检测(例如,使用 检测单元712)经由所述一个或多个输入设备单元704进行的指向用户界面 的第二元素的第二输入。响应于检测到指向用户界面的第二元素的第二输入, 处理单元708基于所检测到的第二输入的特征来更新(例如,使用显示使能 单元710)显示单元上的用户界面。根据确定(例如,使用确定单元718进 行)第二输入符合第二用户交互模型所指定的触觉输出标准,处理单元708 使能(例如,使用触觉输出使能单元714)生成对应于第二输入的第二触觉 输出,并且根据确定(例如,使用确定单元718进行)第二输入不符合第二 用户交互模型所指定的触觉输出标准,处理单元708放弃使能生成第二触觉 输出。
在一些实施方案中,第一元素包括至少部分地基于由第一软件应用的特 定于应用的模块提供的信息而生成的滑块对象,并且第一用户交互模型指定 根据用户利用触摸输入对滑块对象的操纵来生成触觉输出(例如,使用触觉 输出使能单元714)。在一些实施方案中,处理单元708被进一步配置为使 能响应于选择滑块对象的调制类型的触摸输入而生成预定义的调制选择触觉 输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一用户交互模型指定根据滑块对象的调制类型以 及根据用户利用触摸输入对滑块对象的操纵而调制的第一软件应用的参数来 生成第一触觉输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一用户交互模型指定根据滑块对象的可移动部分 到达末端位置来生成不同的触觉输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一元素包括至少部分地基于由第一软件应用的特 定于应用的模块提供的信息而生成的开关对象,并且第一用户交互模型指定 在第一输入对应于改变开关对象状态的动作时生成第一触觉输出(例如,使 用触觉输出使能单元714)。
在一些实施方案中,第一元素包括至少部分地基于由第一软件应用的特 定于应用的模块提供的信息而生成的值选择对象,并且第一用户交互模型指 定在第一输入对应于改变使用值选择对象选择的值的动作时生成第一触觉输 出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一元素包括响应于达到刷新阈值的下拉手势而刷 新的内容,并且第一用户交互模型指定根据确定(例如,使用确定单元718 进行)第一输入对应于达到刷新阈值的下拉手势来生成预定义的冲击触觉输 出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一元素包括其尺寸响应于包括缩放手势的第一输 入而改变的区域或对象,并且第一用户交互模型指定根据确定(例如,使用 确定单元718进行)区域或对象的尺寸已达到预定义限度来生成预定义尺寸 限度的触觉输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一元素包括至少部分地基于由第一软件应用的特 定于应用的模块提供的信息而生成的、具有按行和列组织的单元格的表格, 并且第一用户交互模型指定在第一输入从表格中的任何单元格移动到表格中 的任何其他单元格、或者从表格外部移动到表格内部的单元格时生成第一触 觉输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一元素包括至少部分地基于由第一软件应用的特 定于应用的模块提供的信息而生成的、具有按行和列组织的单元格的表格, 并且第一用户交互模型指定在两行或更多行单元格响应于第一输入而重新排 序时生成第一触觉输出(例如,使用触觉输出使能单元714)。
在一些实施方案中,第一输入使得第一软件应用在不同项目的集合中选 择项目,使之移动到第一元素内的预定义位置,并且第一用户交互模型指定 结合移动到第一元素内的预定义位置的所选择的项目而生成第一触觉输出 (例如,使用触觉输出使能单元714)。
在一些实施方案中,第一用户交互模型指定在第一输入或根据第一输入 操纵的对象接近下一预定义状态时生成(例如,使用触觉输出使能单元714) 第一触觉输出,以及在第一输入或根据第一输入操纵的对象达到下一预定义 状态时生成与第一触觉输出不同的第二触觉输出。
上文参考图6A-6D所述的操作任选地由图1A-1B或图7中所描绘的部件 来实现。例如,检测操作610、更新操作614和生成操作618任选地由事件 分类器170、事件识别器180和事件处理程序190来实现。事件分类器170 中的事件监视器171检测触敏显示器112上的接触,并且事件分配器模块174 将事件信息递送到应用136-1。应用136-1的相应事件识别器180将事件信息 与相应事件定义186进行比较,并且确定触敏表面上第一位置处的第一接触 是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如对用户界 面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当检测到相 应的预定义的事件或子事件时,事件识别器180激活与对该事件或子事件的 检测相关联的事件处理程序190。事件处理程序190任选地使用或调用数据 更新器176或对象更新器177来更新应用程序内部状态192。在一些实施方 案中,事件处理程序190访问相应GUI更新器178来更新应用所显示的内容。 类似地,本领域技术人员会清楚地知道基于在图1A至图1B中所示的部件可 如何实现其他过程。
图8A-8D是示出根据一些实施方案的使触觉输出和用户界面变化同步 的方法800的流程图。在具有显示器、触敏表面和一个或多个触觉输出发生 器的电子设备(例如,设备300,图3;或便携式多功能设备100,图1A) 处执行方法800。在一些实施方案中,显示器是触摸屏显示器,并且触敏表 面在显示器上或与显示器集成。在一些实施方案中,显示器与触敏表面是分 开的。方法800中的一些操作任选地被组合,和/或一些操作的顺序任选地被改变。
如下所述,方法800提供结合用户界面事件来提供触觉输出的直观方式。 提供触觉输出需要比更新用户界面更长的时间。因此,用户界面事件(例如, 时间灵活用户界面事件)被延迟,使得延迟后的用户界面事件与触觉输出的 生成同步。使触觉输出的生成与用户界面更新同步,提供了直观用户界面。 另一方面,对于时间严格用户界面事件,用户界面事件未被延迟,从而保持 设备对此类时间严格用户界面事件的响应性。该方法降低了在与用户界面交 互时来自用户的输入的数量、范围和/或性质,从而创建更有效的人机界面。对于电池驱动的电子设备,确保用户更快且更有效地与用户界面进行交互, 可节省功率并且延长电池充电之间的时间。
设备在显示器上显示(802)用户界面(例如,如图5XX中对于T=t0所示 的用户界面5105)。
设备检测(804)触发与触觉输出相关联的第一用户界面事件(例如,接收 到日历事件邀请,如图5XX中对于T=t1所示)的第一条件(例如,用户输入、 排定事件诸如闹钟或定时器、或外部触发的事件诸如传入通知)的发生。生 成第一用户界面事件包括(806)显示用户界面的一个或多个变化(例如,在图 5XX中,日历事件邀请示能表示5108在用户界面5105上的显示)。
在一些实施方案中,第一条件的发生包括(808)符合预定义输入模式标准 (例如,来回摇晃设备的模式,如图5WW中对于T=t1所示)的所检测到的 电子设备的移动,并且用户界面的所述一个或多个变化包括撤销先前执行的 操作(例如,自动更正、重新显示一个或多个删除的字符、移除一个或多个 先前键入的字符、撤销项目的删除、和/或显示撤消操作示能表示,如图5WW 中对于T=t3所示)。
设备将不能够在相应时间量内生成(810)与第一用户界面事件相关联的 触觉输出(例如,由于生成其他触觉输出和/或触觉输出发生器未准备好生成 触觉输出,原因在于触觉输出发生器处于低功率状态)。在一些实施方案中, 设备未被配置为在相应时间量内生成与第一用户界面事件相关联的触觉输出 (例如,从请求或发起与第一用户界面事件相关联的触觉输出的时间点到生 成触觉输出的时间点需要至少相应时间量,诸如图5WW中所示的T延迟或更 多)。
响应于检测到第一条件的发生,根据确定第一用户界面事件对应于第一 用户界面事件类别(812)(例如,第一用户界面事件不响应于用户输入,诸如 不响应于触摸输入而对用户界面直接操纵的警示或其他通知),设备将生成 第一用户界面事件延迟(814)至少相应时间量(例如,在图5WW中,设备将 生成第一用户界面事件延迟T延迟)。
在一些实施方案中,设备在相应时间量为第一时间量时将显示用户界面 的所述一个或多个变化延迟(816)第一时间量,并且在相应时间量为第二时间 量时将显示用户界面的所述一个或多个变化延迟第二时间量(例如,设备基 于生成触觉输出需要的时间来延迟显示用户界面的所述一个或多个变化)。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括(818)确定第一用户界面事件是不对应于当前在触敏表面上检测到的 用户输入的通知事件(例如,接收到日历事件邀请,如图5XX中对于T=t1所示)。在一些实施方案中,确定第一用户界面事件对应于第一用户界面事 件类别包括确定第一用户界面事件与在通知事件的同时或紧接通知事件前检 测到的触敏表面上的任何用户输入无关。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括(820)确定第一用户界面事件是根据从电子设备外部的信息源接收到 以电子方式传送的信息而发起的通知事件(例如,接收到日历事件邀请,如 图5XX中对于T=t1所示)。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括(822)确定第一用户界面事件是根据从电子设备所执行的应用接收到 以电子方式传送的信息(例如,接收到日历事件邀请,如图5XX中对于T=t1所示)而发起的、并且与在通知事件的同时或紧接通知事件前检测到的触敏 表面上的任何用户输入无关的通知事件。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括(824)确定第一用户界面事件是根据电子设备用户发起的交易的完成 而发起的通知事件(例如,支付凭据经由短程无线通信信号向支付终端的传 输(诸如NFC支付)、经由生物识别传感器(诸如指纹传感器)对支付的成 功授权、或通过远程支付服务器接收支付的授权,如图5YY中所示)。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括(826)确定使用一定值向应用编程接口(API)提供第一用户界面事件,该 值指示用户界面的所述一个或多个变化可延迟直至设备准备好生成触觉输出 (例如,使用指示第一用户界面事件是灵活事件还是不灵活事件的信息从应 用向应用编程接口(以及向图1D中所示的独立于应用的软件模块260)提供 第一用户界面事件)。
在将第一用户界面事件延迟至少相应时间量之后,设备显示(828)用户界 面的所述一个或多个变化,并且生成与第一用户界面事件相关联的触觉输出。 用户界面的所述一个或多个变化的显示和与第一用户界面事件相关联的触觉 输出的生成同步(830)(例如,使得用户界面的所述一个或多个变化的显示与 第一触觉输出的生成同时进行,如图5WW中所示)(例如,使用附录B中 所述的prepareWithCompletionHandler函数)。
在一些实施方案中,响应于检测到第一条件的发生,根据确定第一用户 界面事件对应于第二用户界面事件类别(例如,第一用户界面事件响应于用 户输入,诸如与响应于触摸输入而对用户界面的直接操纵相对应的用户界面 的变化),设备在经过了相应时间量之前显示(832)用户界面的所述一个或多 个变化,并且在经过了相应时间量之后生成与用户界面中的所述一个或多个 变化相关联的触觉输出(例如,在图5VV中,在不延迟的情况下显示用户界 面的所述一个或多个变化以提供迅速视觉反馈)。
在一些实施方案中,第一用户界面事件类别包括(834)用户界面的所述一 个或多个变化的相应时间量较灵活的事件(例如,与紧接在前的用户输入无 关的用户界面事件)。第二用户界面事件类别包括用户界面的所述一个或多 个变化的相应时间量不灵活的事件(例如,由用户输入发起的用户界面事件)。
在一些实施方案中,第一用户界面事件类别包括(836)用户界面的所述一 个或多个变化不模拟用户输入对用户界面的直接操纵的事件(例如,接收到 日历事件邀请,如图5XX中对于T=t1所示)。第二用户界面事件类别包括用 户界面的所述一个或多个变化模拟用户输入对用户界面的直接操纵的事件 (例如,触发第一用户界面事件的用户输入,如图5VV中所示与用户界面对 象在用户界面中的移动相对应的这种接触移动,或与基于接触的压力来改变 用户界面对象的外观相对应的接触强度的增加)。
在一些实施方案中,设备检测(838)触敏表面上的、触发与触觉输出相关 联的第二用户界面事件的用户输入(例如,图5VV中的用户输入571)。生 成第二用户界面事件包括显示用户界面的一个或多个变化。响应于检测到触 敏表面上的用户输入,设备对第二用户界面事件显示用户界面的所述一个或 多个变化,并且生成与第二用户界面事件相关联的触觉输出(例如,列表元 素572和列表元素573在图5VV中重新排序,并且生成对应触觉输出)。对 第一用户界面事件显示用户界面的所述一个或多个变化和生成与第一用户界 面事件相关联的触觉输出之间的第一时间间隔,小于对第二用户界面事件显 示用户界面的所述一个或多个变化和生成与第二用户界面事件相关联的触觉 输出之间的第二时间间隔(例如,在一些实施方案中,对第一用户界面事件 显示用户界面的一个或多个变化和生成与第一用户界面事件相关联的触觉输 出之间的第一时间间隔在图5WW中接近零,并且在图5VV中小于t1与t2之 间的第二时间间隔)。
应当理解,图8A-8D中的操作被描述的特定次序仅仅是示例,并非旨在 指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到多 种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参考 本文所述的其他方法(例如,方法600,1000,1200,1400,1600,1800和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图8A-8D描述的方 法800。例如,上文参考方法800所述的触觉输出、用户界面元素、用户界 面事件、用户界面事件类别、通知事件、以及触觉输出与用户界面事件的同 步,任选地具有本文参考本文所述的其他方法(例如,方法600,1000,1200, 1400,1600,1800和2000)描述的触觉输出、用户界面元素、用户界面事件、 用户界面事件类别、通知事件、以及触觉输出与用户界面事件的同步的特征 中的一者或多者。为了简明起见,这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图9示出根据各种所述实施方案的原理进行配置的 电子设备900的功能框图。该设备的功能块任选地由执行各种所述实施方案 的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应当 理解,图9中所述的功能块任选地被组合或被分离为子块,以便实现各种所 描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块的 任何可能的组合或分离或进一步限定。
如图9中所示,电子设备900包括被配置为显示用户界面的显示单元902 (例如,包括显示器112)、被配置为接收触摸输入(例如,显示单元902 的显示表面上)的触敏表面单元904、被配置为生成一个或多个触觉输出的 一个或多个触觉输出发生器单元906、以及与显示单元902、触敏表面单元 904和一个或多个触觉输出发生器单元906耦接的处理单元908。在一些实施 方案中,处理单元908包括下列子单元中的一者或多者:显示使能单元910、 检测单元912、延迟单元914、触觉输出使能单元916和确定单元918。
在一些实施方案中,处理单元908被配置为使能在显示单元902上显示 (例如,使用显示使能单元910)用户界面。处理单元908检测(例如,使 用检测单元912)触发与触觉输出相关联的第一用户界面事件的第一条件的 发生,其中生成第一用户界面事件包括使能显示(例如,使用显示使能单元 910)用户界面的一个或多个变化。在一些实施方案中,设备(例如,设备 900)将不能够在相应时间量内生成与第一用户界面事件相关联的触觉输出(例如,使用触觉输出发生器单元906),并且响应于检测到(例如,使用 检测单元912)第一条件的发生,根据确定(例如,使用确定单元918进行) 第一用户界面事件对应于第一用户界面事件类别,处理单元908使能生成(例 如,使用触觉输出使能单元916)并将第一用户界面事件的生成延迟(例如, 使用延迟单元914)至少相应时间量。在将第一用户界面事件的生成延迟(例 如,使用延迟单元914)至少相应时间量之后,处理单元908使能显示(例 如,使用显示使能单元910)用户界面的所述一个或多个变化,其中用户界 面的所述一个或多个变化的显示和与第一用户界面事件相关联的触觉输出的 生成同步。
在一些实施方案中,处理单元908被进一步配置为在相应时间量为第一 时间量时,将显示用户界面的所述一个或多个变化延迟(例如,使用延迟单 元914)第一时间量,并且在相应时间量为第二时间量时,将显示用户界面 的所述一个或多个变化延迟(例如,使用延迟单元914)第二时间量。
在一些实施方案中,处理单元908被配置为响应于检测到第一条件的发 生,根据确定(例如,使用确定单元918进行)第一用户界面事件对应于第 二用户界面事件类别,使能在经过了相应时间量之前显示用户界面的所述一 个或多个变化(例如,使用显示使能单元910),其中在经过了相应时间量 之后生成与用户界面中的所述一个或多个变化相关联的触觉输出(例如,使 用触觉反馈单元918)。
在一些实施方案中,第一用户界面事件类别包括用户界面的所述一个或 多个变化的时序较灵活的事件,并且第二用户界面事件类别包括用户界面的 所述一个或多个变化的时序不灵活的事件。
在一些实施方案中,第一用户界面事件类别包括用户界面的所述一个或 多个变化不模拟用户输入对用户界面的直接操纵的事件,并且第二用户界面 事件类别包括用户界面的所述一个或多个变化模拟用户输入对用户界面的直 接操纵的事件。
在一些实施方案中,处理单元908被配置为检测触敏表面单元904上的、 触发与触觉输出相关联的第二用户界面事件的用户输入,其中生成第二用户 界面事件包括使能显示(例如,使用显示使能单元910)用户界面的一个或 多个变化。响应于检测到触敏表面单元904上的用户输入,处理单元908被 配置为使能对第二用户界面事件显示(例如,使用显示使能单元910)用户 界面的所述一个或多个变化,并且使能生成与第二用户界面事件相关联的触 觉输出(例如,使用触觉输出使能单元916),其中对第一用户界面事件显 示用户界面的所述一个或多个变化和生成与第一用户界面事件相关联的触觉 输出之间的第一时间间隔,小于对第二用户界面事件显示用户界面的所述一 个或多个变化和生成与第二用户界面事件相关联的触觉输出之间的第二时间 间隔。
在一些实施方案中,第一条件的发生包括符合预定义输入模式标准的所 检测到的电子设备900的移动,并且用户界面的所述一个或多个变化包括撤 销先前执行的操作。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括确定(例如,使用确定单元918进行)第一用户界面事件是不对应于 当前在触敏表面单元904上检测到的用户输入的通知事件。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括确定(例如,使用确定单元918进行)第一用户界面事件是根据从电 子设备900外部的信息源接收到以电子方式传送的信息而发起的通知事件。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括确定(例如,使用确定单元918进行)第一用户界面事件是根据从电 子设备900所执行的应用接收到以电子方式传送的信息而发起的、并且与在 通知事件的同时或紧接通知事件前检测到的触敏表面单元904上的任何用户 输入无关的通知事件。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括确定(例如,使用确定单元918进行)第一用户界面事件是根据电子 设备900的用户发起的交易的完成而发起的通知事件。
在一些实施方案中,确定第一用户界面事件对应于第一用户界面事件类 别包括确定(例如,使用确定单元918进行)使用一定值向应用编程接口(API) 提供第一用户界面事件,该值指示用户界面的所述一个或多个变化可延迟直 至设备900准备好生成触觉输出。
上文参考图8A-8D所述的操作任选地由图1A-1B或图9中所描绘的部件 来实现。例如,检测操作804、延迟操作814及显示和生成操作828任选地 由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类 器170中的事件监视器171检测触敏显示器112上的接触,并且事件分配器 模块174将事件信息递送到应用136-1。应用136-1的相应事件识别器180将 事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的第一接触是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如 对用户界面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当 检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或 子事件的检测相关联的事件处理程序190。事件处理程序190任选地使用或 调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一 些实施方案中,事件处理程序190访问相应GUI更新器178来更新应用所显示的内容。类似地,本领域技术人员会清楚地知道基于在图1A至图1B中所 示的部件可如何实现其他过程。
图10A-10D是示出根据一些实施方案的设定触觉输出发生器的功率/延 迟状态的方法1000的流程图。在具有显示器、触敏表面和一个或多个触觉输 出发生器的电子设备(例如,设备300,图3;或便携式多功能设备100,图1A)处执行方法1000。在一些实施方案中,显示器是触摸屏显示器,并且触 敏表面在显示器上或与显示器集成。在一些实施方案中,显示器与触敏表面 是分开的。方法1000中的一些操作任选地被组合,和/或一些操作的顺序任 选地被改变。
如下所述,方法1000提供基于触觉输出发生器的状态来提供触觉输出 的增强方式。预测即将到来的触觉输出生成事件并将触觉输出发生器转变为 低延迟模式,可减少生成触觉输出时的延迟,这使设备对用户输入更具响应 性,从而创建更有效的人机界面。对于电池驱动的电子设备,与始终保持触 觉输出发生器处于低延迟模式相比,基于即将到来的触觉输出生成事件的预 测来将触觉输出发生器置于低延迟模式可节省功率,并延长电池充电之间的 时间。
在所述一个或多个触觉输出发生器处于低功率状态时(例如,在操作 5182处,图5KKK),设备接收(1002)用户交互已开始的指示(例如,检测 输入的第一部分,诸如触敏表面上的触摸或拖放操作的开始(如图5III中所 示),或从用户交互已开始的第一软件应用接收“准备”请求(诸如在操作 5184处,图5KKK)。
用户交互的相应部分与触觉输出相关联(1004)(例如,对应于位置指示 符5161和标记5162的重叠的用户交互部分与触觉输出相关联,使得位置指 示符5161和标记5162的重叠发起触觉输出)。
低功率状态是(1006)以第一延迟量生成触觉输出的状态(例如,使用所 述一个或多个触觉输出发生器生成触觉输出将需要至少预热时间量,诸如 ΔTA,图5ZZ和5HHH)。
在一些实施方案中,低功率状态是(1008)所述一个或多个触觉输出发生 器的预定义不活动状态(例如,“不活动”状态,图5ZZ)。在一些实施方 案中,所述一个或多个触觉输出发生器在低功率状态下不消耗功率。
在一些实施方案中,与触觉输出相关联的用户交互包括(1010)对应于具 有触敏表面上的位置(例如,图5III中的位置指示符5161的位置)的触摸输 入或具有触敏表面上的位置的用户界面对象的位置信息。
在一些实施方案中,设备根据用户交互的位置信息来确定(1012)触觉输 出的位置(例如,当设备包括多个触觉输出发生器时,使用位于用户交互位 置附近的一个或多个触觉输出发生器来生成触觉输出)。
在一些实施方案中,所述一个或多个触觉输出发生器包括(1014)两个或 更多个触觉输出发生器,每个触觉输出发生器具有对应位置、或位置和尺寸, 并且确定触觉输出的位置包括根据用户交互的位置信息以及所述两个或更多 个触觉输出发生器的位置、或位置和尺寸来确定触觉输出的位置(例如,如 图5G-5H中所示,在滑块507的位置附近的位置处生成触觉输出)。
响应于接收到与触觉输出相关联的用户交互已开始的指示,根据确定该 指示符合触觉输出发生器准备标准(例如,在操作5186-是处,图5KKK), 设备在第一时间(例如,在图5III中的T=t1时)将所述一个或多个触觉输出 发生器设定(1016)为低延迟状态(例如,预热状态具有比不活动状态更低的 延迟,以及在一些实施方案中,比就绪状态更高的延迟)。低延迟状态是(1018) 以低于第一延迟量的第二延迟量(例如,ΔTB,图5ZZ和5III)生成触觉输出 的状态(例如,低延迟状态是使用所述一个或多个触觉输出发生器生成触觉输出时需要比预热时间量更少的时间的状态,如图5ZZ中所示)。
在一些实施方案中,所述一个或多个触觉输出发生器的低功率状态具有 (1020)比低延迟状态更低的功率消耗(例如,低延迟状态是消耗比低功率状 态更多的功率的高功率状态)。低延迟状态具有在生成触觉输出时比低功率 状态更低的延迟,如图5ZZ中所示(例如,低功率状态是消耗比低延迟状态 更少的功率的高延迟状态)。
在一些实施方案中,从第一低延迟状态(例如,具有减少的延迟的预热 状态,该减少的延迟诸如为比关状态或不活动状态下的延迟ΔTA更低但用户 仍可感知的延迟ΔTB,如本文参考图5ZZ所述)和第二低延迟状态(例如, 就绪状态或活动状态,其中所述一个或多个触觉输出发生器准备好以最小延 迟生成触觉输出,该最小延迟诸如为低于用户可感知的阈值的延迟ΔTC)选 择(1022)低延迟状态,如例如参考图5KKK的操作5188所述。第一低延迟状 态消耗比第二低延迟状态更少的功率,并且具有比第二低延迟状态更高的延 迟。例如,当需要最低延迟时,设备选择第二低延迟状态。
在一些实施方案中,由设备的操作系统(例如,操作系统126,图1A) 基于设备所使用的节能协议从第一低延迟状态和第二低延迟状态选择(1024) 低延迟状态(例如,如果第一软件应用太频繁地要求将设备设定为就绪状态, 或设备处于操作的电池节电模式,则操作系统可决定将设备设定为预热状态 而非就绪状态,以便节省功率)。
在一些实施方案中,设备从第一软件应用发出(1026)将所述一个或多个 触觉输出发生器设定为低延迟状态的命令。将所述一个或多个触觉输出发生 器设定为低延迟状态是响应于第一软件应用所发出的将所述一个或多个触觉 输出发生器设定为低延迟状态的命令来执行的(例如,来自图1D中的应用1 (136-1)的信息272包括将所述一个或多个触觉输出发生器设定为低延迟状态 的一个或多个指令和/或命令)。
在一些实施方案中,设备从第一软件应用(例如,应用136-1,图1D) 发出(1028)将所述一个或多个触觉输出发生器设定为低延迟状态的命令,并 且在电子设备的操作系统处,接收所发出的命令并且确定是否将所述一个或 多个触觉输出发生器设定为低延迟状态。
在一些实施方案中,设备使用电子设备的操作系统确定(1030)何时将所 述一个或多个触觉输出发生器设定为低延迟状态(例如,图5KKK中的操作 5186)。
在一些实施方案中,电子设备的操作系统根据电子设备的状态来确定 (1032)是否将所述一个或多个触觉输出发生器设定为低延迟状态(例如,如 果设备处于操作的电池节电模式,操作系统可决定是否将设备设定为低延迟 状态,以便节省功率)。
在一些实施方案中,电子设备的操作系统根据第一软件应用发出的将所 述一个或多个触觉输出发生器设定为低延迟状态的先前命令的相关历史信息 来确定(1034)响应于第一软件应用发出将所述一个或多个触觉输出发生器设 定为低延迟状态的命令,是否将所述一个或多个触觉输出发生器设定为低延 迟状态(例如,如果应用太多次请求准备,而不请求生成触觉输出,则设备 忽略后续的准备请求)。
在将所述一个或多个触觉输出发生器设定为低延迟状态之后(1036),根 据确定在经过自第一时间起的预定义时间量之前用户交互已达到与触觉输出 相关联的用户交互的相应部分并且所述一个或多个触觉输出发生器仍处于低 延迟状态,设备使用所述一个或多个触觉输出发生器以第二延迟量生成(1038) 触觉输出(例如,生成触觉输出需要比预热时间量更少的时间);以及根据 确定在至少自第一时间起的预定义时间量(例如,超时时间段)内尚未生成 触觉输出,使所述一个或多个触觉输出发生器从低延迟状态转变(1040)为低 功率状态(例如,不活动状态)(例如,使用下文在附录A中所述的UIFeedbackGenerator准备函数),如例如参考图5KKK的操作5194所述。
在一些实施方案中,在将所述一个或多个触觉输出发生器设定为低延迟 状态之后(1036),根据确定在经过自第一时间起的预定义时间量之后用户交 互已达到与触觉输出相关联的用户交互的相应部分并且所述一个或多个触觉 输出发生器已返回到低功率状态,设备使用所述一个或多个触觉输出发生器 以第一延迟量生成(1042)触觉输出(例如,生成触觉输出需要至少预热时间 量的时间)。
在一些实施方案中,响应于接收到与触觉输出相关联的用户交互已开始 的指示,根据确定该指示不符合触觉输出发生器准备标准(例如,因为设备 处于操作的电池节电模式,或因为第一应用已太频繁地请求设备准备生成触 觉输出),设备保持(1044)所述一个或多个触觉输出发生器处于低功率状态 并且放弃将所述一个或多个触觉输出发生器设定为低延迟状态(例如,如果 第一软件应用已太频繁地要求将设备设定为就绪状态,或设备处于操作的电 池节电模式,则操作系统可忽略该请求以便节省电池电量),如例如参考图5KKK的操作5186-否所述。
应当理解,图10A-10D中的操作被描述的特定次序仅仅是示例,并非旨 在指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到 多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参 考本文所述的其他方法(例如,方法600,800,1200,1400,1600,1800和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图10A-10D描述的 方法1000。例如,上文参考方法1000所述的触觉输出、触觉输出发生器、 触觉输出发生器状态和软件应用,任选地具有本文参考本文所述的其他方法 (例如,方法600,800,1200,1400,1600,1800和2000)描述的触觉输出、触 觉输出发生器、触觉输出发生器状态和软件应用的特征中的一者或多者。为 了简明起见,这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图11示出根据各种所述实施方案的原理进行配置 的电子设备1100的功能框图。该设备的功能块任选地由执行各种所述实施方 案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应 当理解,图11中所述的功能块任选地被组合或被分离为子块,以便实现各种 所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块 的任何可能的组合或分离或进一步限定。
如图11中所示,电子设备1100包括被配置为显示一个或多个用户界面 的显示单元1102(例如,包括显示器112)、被配置为接收触摸输入(例如, 显示单元1102的显示表面上)的触敏表面单元1104、被配置为生成一个或 多个触觉输出的一个或多个触觉输出发生器单元1106、以及与显示单元 1102、触敏表面单元1104和一个或多个触觉输出发生器单元1106耦接的处 理单元1108。在一些实施方案中,处理单元1108包括下列子单元中的一者或多者:接收单元1110、状态设置单元1112、确定单元1114、触觉输出使 能单元1116和发出单元1118。
在一些实施方案中,在一个或多个触觉输出发生器单元1106处于低功 率状态时,处理单元1108被配置为接收(例如,使用接收单元1110)用户 交互已开始的指示,其中用户交互的相应部分与触觉输出相关联,并且低功 率状态是以第一延迟量生成触觉输出的状态。响应于接收到与触觉输出相关 联的用户交互已开始的指示,根据确定(例如,使用确定单元1114进行)该 指示符合触觉输出发生器准备标准,处理单元1108在第一时间将一个或多个 触觉输出发生器单元1106设定(例如,使用状态设置单元1112)为低延迟 状态,其中低延迟状态是以低于第一延迟量的第二延迟量生成触觉输出的状 态。在将一个或多个触觉输出发生器单元1106设定为低延迟状态之后,根据 确定(例如,使用确定单元1114进行)在经过自第一时间起的预定义时间量 之前用户交互已达到与触觉输出相关联的用户交互的相应部分并且一个或多 个触觉输出发生器单元1106仍处于低延迟状态,处理单元1108使能使用一 个或多个触觉输出发生器单元1106以第二延迟量生成触觉输出。根据确定在至少自第一时间起的预定义时间量内尚未生成触觉输出,处理单元1108将一 个或多个触觉输出发生器单元1106从低延迟状态转变为低功率状态。
在一些实施方案中,处理单元1108被进一步配置为在将一个或多个触 觉输出发生器单元1106设定为低延迟状态之后,根据确定在经过自第一时间 起的预定义时间量之后用户交互已达到与触觉输出相关联的用户交互的相应 部分并且一个或多个触觉输出发生器单元1106已返回到低功率状态,使能使 用一个或多个触觉输出发生器单元1106以第一延迟量生成(例如,使用触觉 输出使能单元1116)触觉输出。
在一些实施方案中,一个或多个触觉输出发生器单元1106的低功率状 态具有比低延迟状态更低的功率消耗,并且低延迟状态具有在生成触觉输出 时比低功率状态更低的延迟。
在一些实施方案中,低功率状态是一个或多个触觉输出发生器单元1106 的预定义不活动状态。
在一些实施方案中,从第一低延迟状态和第二低延迟状态选择低延迟状 态,其中第一低延迟状态消耗比第二低延迟状态更少的功率,并且具有比第 二低延迟状态更高的延迟。
在一些实施方案中,由设备1100的操作系统基于设备1100所使用的节 能协议从第一低延迟状态和第二低延迟状态选择低延迟状态。
在一些实施方案中,处理单元1108被进一步配置为响应于接收到与触 觉输出相关联的用户交互已开始的指示(例如,使用接收单元1110),根据 确定该指示不符合触觉输出发生器准备标准,保持(例如,使用状态设置单 元1112)一个或多个触觉输出发生器单元1106处于低功率状态并且放弃将 一个或多个触觉输出发生器单元1106设定为低延迟状态。
在一些实施方案中,与触觉输出相关联的用户交互包括对应于具有触敏 表面单元1104上的位置的触摸输入或具有触敏表面单元1104上的位置的用 户界面对象的位置信息。
在一些实施方案中,处理单元1108被进一步配置为根据用户交互的位 置信息来确定触觉输出的位置(例如,使用确定单元1114)。
在一些实施方案中,一个或多个触觉输出发生器单元1106包括两个或 更多个触觉输出发生器单元1106,每个触觉输出发生器单元具有对应位置、 或位置和尺寸,并且确定触觉输出的位置包括根据用户交互的位置信息以及 两个或更多个触觉输出发生器单元1106的位置、或位置和尺寸来确定(例如, 使用确定单元1114)触觉输出的位置。
在一些实施方案中,处理单元1108被进一步配置为从第一软件应用发 出(例如,使用发出单元1118)将一个或多个触觉输出发生器单元1106设 定(例如,使用状态设置单元1112)为低延迟状态的命令,其中将一个或多 个触觉输出发生器单元1106设定为低延迟状态是响应于第一软件应用所发 出的将一个或多个触觉输出发生器单元1106设定为低延迟状态的命令来执 行的。
在一些实施方案中,处理单元1108被进一步配置为发出(例如,使用 发出单元1118)将一个或多个触觉输出发生器单元1106设定(例如,使用 状态设置单元1112)为低延迟状态的命令,并且在电子设备1100的操作系 统处接收所发出的命令并确定(例如,使用确定单元1114)是否将一个或多 个触觉输出发生器单元1106设定为低延迟状态。
在一些实施方案中,处理单元1108被进一步配置为使用电子设备1100 的操作系统确定(例如,使用确定单元1114)何时将一个或多个触觉输出发 生器单元1106设定(例如,使用状态设置单元1112)为低延迟状态。在一 些实施方案中,处理单元1108被进一步配置为使用电子设备1100的操作系 统,根据电子设备1100的状态来确定(例如,使用确定单元1114)是否将 一个或多个触觉输出发生器单元1106设定(例如,使用状态设置单元1112)为低延迟状态。
在一些实施方案中,电子设备1100的操作系统根据第一软件应用发出 的将一个或多个触觉输出发生器单元1106设定为低延迟状态的先前命令的 相关历史信息来确定(例如,使用确定单元1114)响应于第一软件应用发出 将一个或多个触觉输出发生器单元1106设定为低延迟状态的命令,是否将一 个或多个触觉输出发生器单元1106设定为低延迟状态。
上文参考图10A-10D所述的操作任选地由图1A-1B或图11中所描绘的 部件来实现。例如,接收操作1002、设定操作1016和生成操作1038任选地 由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类 器170中的事件监视器171检测触敏显示器112上的接触,并且事件分配器 模块174将事件信息递送到应用136-1。应用136-1的相应事件识别器180将 事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的 第一接触是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如 对用户界面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当 检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或 子事件的检测相关联的事件处理程序190。事件处理程序190任选地使用或 调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一 些实施方案中,事件处理程序190访问相应GUI更新器178来更新应用所显 示的内容。类似地,本领域技术人员会清楚地知道基于在图1A至图1B中所 示的部件可如何实现其他过程。
图12A-12D是示出根据一些实施方案的为多个应用生成一致触觉输出 的方法1200的流程图。在具有显示器、触敏表面和一个或多个触觉输出发生 器的电子设备(例如,设备300,图3;或便携式多功能设备100,图1A) 处执行(1202)方法1200。在一些实施方案中,显示器是触摸屏显示器,并且 触敏表面在显示器上或与显示器集成。在一些实施方案中,显示器与触敏表 面是分开的。方法1200中的一些操作任选地被组合,和/或一些操作的顺序 任选地被改变。
如下所述,方法1200提供使用独立于应用的软件模块来提供触觉输出 的增强方式。使用独立于应用的软件基于来自应用软件的信息来提供触觉输 出,这提供了在使用各种软件应用时提供一致用户体验的通用用户界面框架。 向用户提供通用用户界面框架,这增强了此类软件应用及执行此类软件应用 的设备的可用性。继而,这增强了设备的可操作性并且使得用户设备界面更 有效(例如,通过帮助用户提供正确输入并且减少在操作设备/与设备交互时 的用户错误和/或非预期操作)。此外,该方法减小软件应用的大小并且使得 此类软件应用的执行更快。对于电池驱动的电子设备,确保用户更快且更有 效地使用软件应用,可节省功率并延长电池充电之间的时间。
在通过独立于应用的模块(例如,独立于应用的软件模块260,图1D) 将第一类型的事件与第一触觉输出相关联,并且将不同于第一类型的事件的 第二类型的事件与不同于第一触觉输出的第二触觉输出相关联时,设备从第 一应用(例如,应用136-1,图1D)接收(1204)第一信息(例如,指示特定 操作是对应于成功事件还是失败事件的信息272,图1D);以及响应于从第 一应用接收到第一信息(1206),生成对第一信息的响应,包括:根据确定第 一信息对应于第一类型的应用事件(例如,成功事件),使用所述一个或多 个触觉输出发生器生成(1208)第一触觉输出(例如,对于图5AAA中所示的 成功事件的一系列触觉输出);以及根据确定第一信息对应于不同于第一类 型的第二类型的应用事件(例如,失败事件),使用所述一个或多个触觉输 出发生器生成(1210)不同于第一触觉输出的第二触觉输出(例如,对于图 5BBB中所示的失败事件的一系列触觉输出)。
在生成对第一信息的响应之后,设备从不同于第一应用的第二应用(例 如,应用136-2,图1D)接收(1212)第二信息;以及响应于从第二应用接收 到第二信息,生成(1214)对第二信息的响应,包括:根据确定第二信息对应 于第一类型的应用事件,使用所述一个或多个触觉输出发生器生成(1216)第 一触觉输出(例如,对于授权电子支付交易的成功事件的一系列触觉输出); 以及根据确定第二信息对应于第二类型的应用事件,使用所述一个或多个触 觉输出发生器生成(1218)第二触觉输出(例如,对于拒绝电子支付交易的失败事件的一系列触觉输出)(例如,使用UINotificationFeedbackGenerator对 象(或类),包括类型UINotificationFeedbackTypeSuccess和 UINotificationFeedbackTypeError,如附录A中所述)。
在一些实施方案中,第一类型的事件是(1220)成功事件(例如,具有如 附录A中所述的UIEventFeedbackTypeSuccess类型的事件),并且第二类型 的事件是失败事件(例如,具有如附录A中所述的UIEventFeedbackTypeError 类型的事件)。
在一些实施方案中,第一信息接收(1222)自第一应用(例如,应用136-1、 或应用136-1的部件,诸如图1E的应用核心270-1)的特定于应用的模块, 第二信息接收自第二应用(例如,应用136-2、或应用136-2的部件,诸如图 1E的应用核心270-2)的特定于应用的模块,并且确定是生成第一触觉输出 还是第二触觉输出是通过独立于应用的模块(例如,图1D的独立于应用的 软件模块260、或图1E的独立于应用的软件模块260的相应实例)来执行的 (例如,在图1E中,应用核心1(270-1)发送指示对应事件是成功事件还是失 败事件的信息,应用核心2(270-2)发送指示对应事件是成功事件还是失败事 件的信息,并且独立于应用的软件模块260(或其实例)基于成功事件和失 败事件与第一触觉输出和第二触觉输出的关联来确定是生成第一触觉输出还 是第二触觉输出)。
在一些实施方案中,生成对第一信息的响应包括(1224)根据确定第一信 息对应于与不同于第一触觉输出和第二触觉输出的第五触觉输出相关联并且 与第一类型和第二类型不同的第三类型的应用事件(例如,警告事件,诸如 如图5CCC中所示对应于撤消操作示能表示的显示的通知),使用所述一个 或多个触觉输出发生器生成不同于第一触觉输出和第二触觉输出的第五触觉 输出;并且生成对第二信息的响应包括根据确定第二信息对应于第三类型的 应用事件,使用所述一个或多个触觉输出发生器(例如,使用UIEventFeedbackGenerator对象(或类),包括类型 UIEventFeedbackTypeWarning,如附录A中所述)来生成第五触觉输出,如 例如参考图5CCC所述。
在一些实施方案中,在生成对第一信息的响应并生成对第二信息的响应 之后,设备通过独立于应用的模块改变(1226)与第一类型的事件相关联的第 一触觉输出,包括将第一类型的事件与不同于第一触觉输出的第三触觉输出 相关联。例如,由于独立于应用的模块确定对于相应类型的事件要生成哪种 触觉输出,通过改变事件类型与独立于应用的模块中的特定触觉输出的关联, 可一致地更新多个应用的触觉输出。此外,这有利于改变特定事件类型的触 觉输出,因为仅需要用独立于应用的模块进行改变,而不必改变被配置为生 成特定事件类型的触觉输出的所有应用。
在一些实施方案中,在通过独立于应用的模块改变与第一类型的事件相 关联的触觉输出之后,设备从第一应用接收(1228)第三信息;以及响应于从 第一应用接收到第三信息,生成对第三信息的响应,包括:根据确定第三信 息对应于第一类型的应用事件(例如,成功事件),使用所述一个或多个触 觉输出发生器来生成第三触觉输出。在生成对第三信息的响应之后,设备从 不同于第一应用的第二应用接收第四信息;以及响应于从第二应用接收到第 四信息,生成对第四信息的响应,包括:根据确定第四信息对应于第一类型 的应用事件(例如,成功事件),使用所述一个或多个触觉输出发生器来生 成第三触觉输出。例如,一旦第一类型的应用事件(例如,成功事件)与新 触觉输出(即,第三触觉输出)相关联,就改变第一应用和第二应用两者中 第一类型的应用事件的触觉输出以匹配第三触觉输出。
在一些实施方案中,第三信息接收(1230)自第一应用(例如,图1E中的 应用核心1(270-1))的特定于应用的模块,第四信息接收自第二应用(例如, 图1E中的应用核心2(270-2))的特定于应用的模块,并且确定是否生成第三 触觉输出(例如,确定第三信息和/或第四信息是否对应于第一类型的应用事 件)是通过独立于应用的模块(例如,图1E中的独立于应用的软件模块260 或其实例)来执行的。
在一些实施方案中,在生成对第一信息的响应并生成对第二信息的响应 之后,设备通过独立于应用的模块改变(1232)与第二类型的事件相关联的触 觉输出,包括将第二类型的事件与不同于第二触觉输出的第四触觉输出相关 联。
在一些实施方案中,在通过独立于应用的模块改变与第二类型的事件相 关联的触觉输出之后,设备从第一应用接收(1234)第五信息;以及响应于从 第一应用接收到第五信息,生成对第五信息的响应,包括:根据确定第五信 息对应于第二类型的应用事件(例如,失败事件),使用所述一个或多个触 觉输出发生器来生成第四触觉输出。在生成对第五信息的响应之后,设备从 不同于第一应用的第二应用接收第六信息;以及响应于从第二应用接收到第 六信息,生成对第六信息的响应,包括:根据确定第六信息对应于第二类型 的应用事件,使用所述一个或多个触觉输出发生器来生成第四触觉输出。例 如,一旦第二类型的应用事件(例如,失败事件)与新触觉输出(即,第四 触觉输出)相关联,就改变第一应用和第二应用两者中第二类型的应用事件 的触觉输出以匹配第四触觉输出。
在一些实施方案中,第五信息接收(1236)自第一应用(例如,图1E中的 应用核心1(270-1))的特定于应用的模块,第六信息接收自第二应用(例如, 图1E中的应用核心2(270-2))的特定于应用的模块,并且确定是否生成第四 触觉输出(例如,确定第五信息和/或第六信息是否对应于第二类型的应用事 件)是通过独立于应用的模块(例如,图1E中的独立于应用的软件模块260 或其实例)来执行的。
应当理解,图12A-12D中的操作被描述的特定次序仅仅是示例,并非旨 在指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到 多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参 考本文所述的其他方法(例如,方法600,800,1000,1400,1600,1800和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图12A-12D描述的 方法1200。例如,上文参考方法1200所述的触觉输出、信息、软件应用、 独立于应用的模块和特定于应用的模块,任选地具有本文参考本文所述的其 他方法(例如,方法600,800,1000,1400,1600,1800和2000)描述的触觉输 出、信息、软件应用、独立于应用的模块和特定于应用的模块的特征中的一 者或多者。为了简明起见,这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
上文参考图12A-12D所述的操作任选地由图1A-1B或图13中所描绘的 部件来实现。例如,接收操作1204、生成操作1208、接收操作1212和生成 操作1214任选地由事件分类器170、事件识别器180和事件处理程序190来 实现。事件分类器170中的事件监视器171检测触敏显示器112上的接触, 并且事件分配器模块174将事件信息递送到应用136-1。应用136-1的相应事 件识别器180将事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的第一接触是否(或该设备的旋转是否)对应于预定义的事件 或子事件,诸如对用户界面上的对象的选择、或该设备从一个取向到另一个 取向的旋转。当检测到相应的预定义的事件或子事件时,事件识别器180激 活与对该事件或子事件的检测相关联的事件处理程序190。事件处理程序190 任选地使用或调用数据更新器176或对象更新器177来更新应用程序内部状 态192。在一些实施方案中,事件处理程序190访问相应GUI更新器178来 更新应用所显示的内容。类似地,本领域技术人员会清楚地知道基于在图1A 至图1B中所示的部件可如何实现其他过程。
根据一些实施方案,图13示出根据各种所述实施方案的原理进行配置 的电子设备1300的功能框图。该设备的功能块任选地由执行各种所述实施方 案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应 当理解,图13中所述的功能块任选地被组合或被分离为子块,以便实现各种 所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块 的任何可能的组合或分离或进一步限定。
如图13中所示,电子设备1300包括被配置为显示用户界面的显示单元 1302(例如,包括显示器112)、被配置为接收触摸输入(例如,显示单元 1302的显示表面上)的触敏表面单元1304、被配置为生成一个或多个触觉输 出的一个或多个触觉输出发生器单元1306、以及与显示单元1302、触敏表面 单元1304和一个或多个触觉输出发生器单元1306耦接的处理单元1308。在 一些实施方案中,处理单元1308包括下列子单元中的一者或多者:接收单元 1310、响应生成使能单元1312、确定单元1314和改变单元1316。
在一些实施方案中,在通过独立于应用的模块将第一类型的事件与第一 触觉输出相关联,并且将不同于第一类型的第二类型的事件与不同于第一触 觉输出的第二触觉输出相关联时,处理单元1308被配置为从第一应用接收 (例如,使用接收单元1310)第一信息。处理单元1308被配置为响应于从 第一应用接收到第一信息,使能生成对第一信息的响应(例如,使用响应生 成使能单元1312),包括:根据确定(例如,使用确定单元1314进行)第一信息对应于第一类型的应用事件,使能使用一个或多个触觉输出发生器单 元1306生成第一触觉输出(例如,使用响应生成使能单元1312),以及根 据确定(例如,使用确定单元1314进行)第一信息对应于不同于第一类型的 第二类型的应用事件,使能使用一个或多个触觉输出发生器单元1306生成(例如,使用响应生成使能单元1312)不同于第一触觉输出的第二触觉输出。 处理单元1308被配置为在使能生成对第一信息的响应之后,从不同于第一应 用的第二应用接收(例如,使用接收单元1310)第二信息。处理单元1308 被配置为响应于从第二应用接收到第二信息,使能生成对第二信息的响应(例 如,使用响应生成使能单元1312),包括:根据确定(例如,使用确定单元 1314进行)第二信息对应于第一类型的应用事件,使能使用一个或多个触觉 输出发生器单元1306生成第一触觉输出,以及根据确定(例如,使用确定单 元1314进行)第二信息对应于第二类型的应用事件,使能使用一个或多个触 觉输出发生器单元1306生成第二触觉输出。
在一些实施方案中,处理单元1308被进一步配置为在使能生成对第一 信息的响应并使能生成对第二信息的响应之后,通过独立于应用的模块改变 与第一类型的事件相关联的触觉输出(例如,使用改变单元1316),包括将 第一类型的事件与不同于第一触觉输出的第三触觉输出相关联。
在一些实施方案中,在通过独立于应用的模块改变与第一类型的事件相 关联的触觉输出之后,处理单元1308从第一应用接收第三信息(例如,使用 接收单元1310)。处理单元1308被配置为响应于从第一应用接收到第三信 息,使能生成对第三信息的响应(例如,使用响应生成使能单元1312),包 括:根据确定(例如,使用确定单元1314进行)第三信息对应于第一类型的 应用事件,使能使用一个或多个触觉输出发生器单元1306生成第三触觉输出 (例如,使用响应生成使能单元1312)。处理单元1308被配置为在使能生 成对第三信息的响应之后,从不同于第一应用的第二应用接收第四信息(例 如,使用接收单元1310)。处理单元1308被配置为响应于从第二应用接收 到第四信息,使能生成对第四信息的响应(例如,使用响应生成使能单元 1312),包括:根据确定(例如,使用确定单元1314进行)第四信息对应于 第一类型的应用事件,使能使用一个或多个触觉输出发生器单元1306生成第 三触觉输出(例如,使用响应生成使能单元1312)。
在一些实施方案中,第三信息接收自第一应用的特定于应用的模块,第 四信息接收自第二应用的特定于应用的模块,并且确定是否生成第三触觉输 出是通过独立于应用的模块来执行的。
在一些实施方案中,处理单元1308被配置为在使能生成对第一信息的 响应并使能生成对第二信息的响应之后,通过独立于应用的模块改变(例如, 使用改变单元1316)与第二类型的事件相关联的触觉输出,包括将第二类型 的事件与不同于第二触觉输出的第四触觉输出相关联。
在一些实施方案中,处理单元1308被配置为在通过独立于应用的模块 改变(例如,使用改变单元1316)与第二类型的事件相关联的触觉输出之后, 从第一应用接收第五信息(例如,使用接收单元1310)。处理单元1308被 配置为响应于从第一应用接收到第五信息,使能生成对第五信息的响应(例 如,使用响应生成使能单元1312),包括:根据确定(例如,使用确定单元 1314进行)第五信息对应于第二类型的应用事件,使能使用一个或多个触觉 输出发生器单元1306生成第四触觉输出(例如,使用响应生成使能单元 1312)。处理单元1308被配置为在使能生成对第五信息的响应之后,从不同 于第一应用的第二应用接收第六信息(例如,使用接收单元1310)。处理单 元1308被配置为响应于从第二应用接收到第六信息,使能生成对第六信息的 响应(例如,使用响应生成使能单元1312),包括:根据确定(例如,使用 确定单元1314进行)第六信息对应于第二类型的应用事件,使能使用一个或多个触觉输出发生器单元1306生成第四触觉输出(例如,使用响应生成使能 单元1312)。
在一些实施方案中,第五信息接收自第一应用的特定于应用的模块,第 六信息接收自第二应用的特定于应用的模块,并且确定是否生成第四触觉输 出是通过独立于应用的模块来执行的。
在一些实施方案中,第一信息接收自第一应用的特定于应用的模块,第 二信息接收自第二应用的特定于应用的模块,并且确定是生成第一触觉输出 还是第二触觉输出是通过独立于应用的模块来执行的。
在一些实施方案中,使能生成对第一信息的响应(例如,使用响应生成 使能单元1312)包括:根据确定(例如,使用确定单元1314进行)第一信 息对应于与不同于第一触觉输出和第二触觉输出的第五触觉输出相关联并且 与第一类型和第二类型不同的第三类型的应用事件,使能使用一个或多个触 觉输出发生器单元1306生成(例如,使用响应生成使能单元1312)不同于 第一触觉输出和第二触觉输出的第五触觉输出。在一些实施方案中,使能生 成对第二信息的响应包括:根据确定(例如,使用确定单元1314进行)第二 信息对应于第三类型的应用事件,使能使用一个或多个触觉输出发生器单元 1306生成(例如,使用响应生成使能单元1312)第五触觉输出。
在一些实施方案中,第一类型的事件是成功事件,并且第二类型的事件 是失败事件。
图14A-14B是示出根据一些实施方案的基于来自特定于应用的模块的信 息来生成触觉输出的方法1400的流程图。在具有显示器、触敏表面以及用于 检测与触敏表面的接触强度的一个或多个传感器的电子设备(例如,设备 300,图3;或便携式多功能设备100,图1A)处执行方法1400。在一些实 施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与显示器集 成。在一些实施方案中,显示器与触敏表面是分开的。方法1400中的一些操 作任选地被组合,和/或一些操作的顺序任选地被改变。
如下所述,方法1400提供使用独立于应用的软件模块来提供触觉输出 的增强方式。使用独立于应用的软件基于来自应用软件的信息来提供触觉输 出,这提供了在使用各种软件应用时提供一致用户体验的通用用户界面框架。 向用户提供通用用户界面框架,这增强了此类软件应用及执行此类软件应用 的设备的可用性。此外,该方法提供基于冲击事件的物理模拟来提供触觉输 出的直观方式。继而,这些特征增强了设备的可操作性并且使得用户设备界 面更有效(例如,通过帮助用户提供正确输入并且减少在操作设备/与设备交 互时的用户错误和/或非预期操作)。此外,该方法减小软件应用的大小并且 使得此类软件应用的执行更快。对于电池驱动的电子设备,确保用户更快且 更有效地使用软件应用,可节省功率并延长电池充电之间的时间。
设备在独立于应用的模块(例如,独立于应用的软件模块260,图1D) 处,从与第一应用(例如,应用136-1、或应用136-1的部件,诸如应用核心 270-1,图1D-1E)相关联的特定于应用的模块接收(1402)有关指向第一应用 的用户界面的输入的信息(例如,信息272)。
响应于检测到该输入而在第一应用的用户界面中执行的操作(1404)与特 定于应用的模块所指定的触觉输出模式相关联。
此外,有关该输入的信息包括(1406)指示响应于检测到该输入而在用户 界面中执行的操作的量值(例如,速度或距离)的信息,如本文参考图 5DDD-5GGG更详细所述。
在一些实施方案中,量值(1408)由第一应用提供。
在一些实施方案中,量值(1410)由电子设备的操作系统(例如,操作系 统126,图1A和3)提供。在一些实施方案中,由操作系统提供的量值考虑 了在重叠时间段期间生成的其他触觉输出。
响应于接收到有关指向第一应用的用户界面的输入的信息,设备经由所 述一个或多个触觉输出发生器生成(1412)与在第一应用的用户界面中执行的 操作相对应的触觉输出。
触觉输出具有(1414)特定于应用的模块所指定的触觉输出模式。
此外,触觉输出具有(1416)根据响应于检测到该输入而在第一应用的用 户界面中执行的操作的量值(例如,如由特定于应用的模块提供)来确定(例 如,通过独立于应用的模块)的幅度,如本文参考图5DDD-5GGG更详细所 述。例如,使用UIImpactFeedbackGenerator生成触觉输出。
在一些实施方案中,进一步根据在模拟碰撞或冲击中对象的速度或质量 中的至少一者来确定(1418)触觉输出的幅度。
在一些实施方案中,进一步通过将预定义物理模型应用于一个或多个所 显示的用户界面元素的一个或多个参数或触摸输入的一个或多个参数来确定 (1420)触觉输出的幅度。
在一些实施方案中,进一步通过振动频率来表征(1422)触觉输出,其中 基于触觉输出模式来选择振动频率。
在一些实施方案中,振动频率(1424)小于100赫兹。
应当理解,图14A-14B中的操作被描述的特定次序仅仅是示例,并非旨 在指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到 多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参 考本文所述的其他方法(例如,方法600,800,1000,1200,1600,1800和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图14A-14B描述的 方法1400。例如,上文参考方法1400所述的触觉输出、用户界面操作、量 值、幅度和频率,任选地具有本文参考本文所述的其他方法(例如,方法600, 800,1000,1200,1600,1800和2000)描述的触觉输出、用户界面操作、量值、 幅度和频率的特征中的一者或多者。为了简明起见,这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图15示出根据各种所述实施方案的原理进行配置 的电子设备1500的功能框图。该设备的功能块任选地由执行各种所述实施方 案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应 当理解,图15中所述的功能块任选地被组合或被分离为子块,以便实现各种 所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块 的任何可能的组合或分离或进一步限定。
如图15中所示,电子设备1500包括被配置为显示用户界面的显示单元 1502(例如,包括显示器112)、被配置为接收触摸输入(例如,在表面(诸 如显示单元1502的显示表面)上)的触敏表面单元1504、被配置为生成一 个或多个触觉输出的一个或多个触觉输出发生器单元1506、以及与显示单元 1502、触敏表面单元1504和一个或多个触觉输出发生器单元1506耦接的处 理单元1508。在一些实施方案中,处理单元1508包括下列子单元中的一者 或多者:接收单元1510、触觉输出使能单元1512和确定单元1514。
在一些实施方案中,处理单元1508被配置为在独立于应用的模块处, 从与第一应用相关联的特定于应用的模块接收(例如,使用接收单元1510) 有关指向第一应用的用户界面的输入的信息,其中响应于检测到该输入而在 第一应用的用户界面中执行的操作与特定于应用的模块所指定的触觉输出模 式相关联,并且有关该输入的信息包括指示响应于检测到该输入而在用户界 面中执行的操作的量值的信息。处理单元1508被配置为响应于接收到有关指 向第一应用的用户界面的输入的信息,使能经由一个或多个触觉输出发生器 单元1506生成(例如,使用触觉输出使能单元1512)与第一应用的用户界 面中执行的操作相对应的触觉输出,其中触觉输出具有特定于应用的模块所 指定的触觉输出模式,并且触觉输出具有根据响应于检测到该输入而在第一 应用的用户界面中执行的操作的量值来确定的幅度。
在一些实施方案中,进一步通过振动频率来表征触觉输出,其中基于触 觉输出模式来选择振动频率。在一些实施方案中,振动频率小于100赫兹。 在一些实施方案中,进一步根据在模拟碰撞或冲击中对象的速度或质量中的 至少一者来确定(例如,使用确定单元1514)触觉输出的幅度。在一些实施 方案中,进一步通过将预定义物理模型应用于一个或多个所显示的用户界面 元素的一个或多个参数或触摸输入的一个或多个参数来确定(例如,使用确 定单元1514)触觉输出的幅度。在一些实施方案中,量值由应用提供。在一 些实施方案中,量值由电子设备1500的操作系统提供。
上文参考图14A-14B所述的操作任选地由图1A-1B或图15中所描绘的 部件来实现。例如,接收操作1402和生成操作1412任选地由事件分类器170、 事件识别器180和事件处理程序190来实现。事件分类器170中的事件监视 器171检测触敏显示器112上的接触,并且事件分配器模块174将事件信息 递送到应用136-1。应用136-1的相应事件识别器180将事件信息与相应事件 定义186进行比较,并且确定触敏表面上第一位置处的第一接触是否(或该 设备的旋转是否)对应于预定义的事件或子事件,诸如对用户界面上的对象 的选择、或该设备从一个取向到另一个取向的旋转。当检测到相应的预定义 的事件或子事件时,事件识别器180激活与对该事件或子事件的检测相关联 的事件处理程序190。事件处理程序190任选地使用或调用数据更新器176 或对象更新器177来更新应用程序内部状态192。在一些实施方案中,事件 处理程序190访问相应GUI更新器178来更新应用所显示的内容。类似地, 本领域技术人员会清楚地知道基于在图1A至图1B中所示的部件可如何实现其他过程。
图16A-16D是示出根据一些实施方案的基于用户交互事件来设定触觉 输出发生器的功率/延迟状态的方法1600的流程图。在具有显示器、触敏表 面以及用于检测与触敏表面的接触强度的一个或多个传感器的电子设备(例 如,设备300,图3;或便携式多功能设备100,图1A)处执行方法1600。 在一些实施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与 显示器集成。在一些实施方案中,显示器与触敏表面是分开的。方法1600中的一些操作任选地被组合,和/或一些操作的顺序任选地被改变。
如下所述,方法1600提供基于触觉输出发生器的状态来提供触觉输出 的增强方式。预测即将到来的触觉输出生成事件并将触觉输出发生器转变为 低延迟模式,可减少生成触觉输出时的延迟,这使设备对用户输入更具响应 性,从而创建更有效的人机界面。对于电池驱动的电子设备,与始终保持触 觉输出发生器处于低延迟模式相比,基于即将到来的触觉输出生成事件的预 测来将触觉输出发生器置于低延迟模式可节省功率,并延长电池充电之间的 时间。
设备在显示器上显示(1602)用户界面。
在显示器上显示用户界面时且在所述一个或多个触觉输出发生器处于 低功率状态时(例如,不活动,图5ZZ和5HHH),设备检测(1604)经由触 敏表面进行的第一用户交互。
在一些实施方案中,第一用户交互是(1606)触敏表面上的接触的压下。
在一些实施方案中,第一用户交互是(1608)在检测到触敏表面上的接触 的压下之后接触的变化。
响应于检测到第一用户交互,设备将所述一个或多个触觉输出发生器设 定(1610)为低延迟状态(例如,预热或活动,图5ZZ),如本文参考图5III 更详细所述。在一些实施方案中,基于确定第一用户交互是潜在对应于与触 觉输出相关联的输入事件序列(例如,拖放输入)的用户交互,将触觉输出 发生器设定为低延迟状态。例如,在一些实施方案中,如本文参考方法1000 所述的那样将触觉输出发生器设定为低延迟状态。
在将所述一个或多个触觉输出发生器设定为低延迟状态之后,设备检测 (1612)作为与第一用户交互相同的用户交互序列的一部分的第二用户交互 (例如,第一用户交互和第二用户交互对应于触敏表面上相同的连续检测到 的接触或接触组)。
响应于检测到第二用户交互,设备生成(1614)对应于第二用户交互的触 觉输出(例如,使用如附录B中所述的UIFeedbackGenerator Prepare函数或UIFeedbackGeneratorUserInteractionDriven选项)。
再次参见操作1612,在一些实施方案中,第一用户交互和第二用户交互 被(1616)检测为触敏表面上的连续触摸输入的一部分(例如,在此期间触摸 输入保持与触敏表面接触),该连续触摸输入横穿显示器上所显示的用户界 面的部件序列。
在一些实施方案中,设备响应于触敏表面上的用户输入而使一组菜单项 滚动(1618),其中用户交互序列包括滚动到或滚动经过用户界面中的选择位 置的、该组菜单项中的相应菜单项序列(例如,如本文参考图5I-5J更详细所 述)。
在一些实施方案中,设备响应于触敏表面上的用户输入而使一组日期部 件或时间部件项滚动(1620),其中用户交互序列包括滚动到或滚动经过用户 界面中的选择位置的日期部件或时间部件项序列(例如,如本文参考图5K-5O 更详细所述)。
再次参见操作1614,在一些实施方案中,监视功能跟踪(1622)用户交互 序列的进展。基于确定监视功能已进入监视功能已开始监视用户交互序列的 起始状态,将所述一个或多个触觉输出发生器改变为低延迟状态。此外,基 于确定监视功能已进入变化状态(例如,对于或相对于用户交互序列的变化 状态),生成触觉输出。
在一些实施方案中,监视功能跟踪(1624)用户交互序列的进展。基于确 定监视功能已进入对应于触觉输出的变化状态之前的变化状态(例如,指示 接触移动的变化状态),将所述一个或多个触觉输出发生器改变为低延迟状 态。此外,基于确定监视功能已进入对应于触觉输出的变化状态(例如,指 示接触越过边界或移动到新置放目标的变化状态),生成触觉输出。
在一些实施方案中,用户交互序列对应(1626)于触敏表面上的连续触摸 输入,该连续触摸输入横穿显示器上所显示的用户界面的部件序列,并且设 备使用相同波形(例如,使用UIRetargetFeedbackGenerator)生成两个或更多 个触觉输出的序列。
在一些实施方案中,用户交互序列对应(1628)于触敏表面上的触摸输入, 该触摸输入横穿显示器上所显示的软键序列(例如,用于选择相同字母或字 符的不同版本,诸如具有不同变音符号的字母(例如,“e”)的按键),并 且设备生成一个或多个触觉输出,所述一个或多个触觉输出对应于到达相对 于软键序列的预定义位置(例如,按键的前缘或中心位置或两者)的触摸输 入。
在一些实施方案中,用户交互序列包括(1630)事件序列,该事件序列对 应于在显示器上所显示的用户界面中将对象从初始位置拖动到另一位置的不 同阶段(例如,使用UIDragFeedbackGenerator对象),如本文参考图5LL-5QQ 更详细所述。
在一些实施方案中,拖动对象的不同阶段包括(1632)对象提起阶段和对 象置放阶段。在一些实施方案中,响应于第一相应用户交互(在用户交互序 列中,第一相应用户交互对应于对象提起阶段),设备将一个或多个触觉输 出发生器设定为低延迟状态,并且响应于第二相应用户交互(在用户交互序 列中,第二相应用户交互对应于对象置放阶段),设备将一个或多个触觉输 出发生器设定为低功率状态(例如,如本文参考方法1000所述)。
在一些实施方案中,拖动对象的不同阶段包括(1634)对应于对象相对于 用户界面特征(例如,网格或阵列,如本文参考图5RR-5SS更详细所述)弹 跳就位的对象弹跳阶段,并且触觉输出对应于对象相对于用户界面特征弹跳 就位。在一些实施方案中,根据对象相对于用户界面特征弹跳就位来生成触 觉输出,而不考虑对象弹跳就位是否对应于拖动对象的不同阶段的序列的对 象弹跳阶段。
在一些实施方案中,在响应于检测到第二用户交互而生成触觉输出之 后,根据确定在小于自第二用户交互起的预定义时间段发生第三用户交互, 设备放弃(1636)响应于检测到作为与第一用户交互和第二用户交互相同的用 户交互序列的一部分的第三用户交互来生成后续的触觉输出(例如,如本文 参考图5K-5O和5JJJ和方法1800更详细所述)。
在一些实施方案中,设备检测(1638)用户交互序列的结束。响应于检测 到用户交互序列的结束,设备将所述一个或多个触觉输出发生器设定为低功 率状态。
在一些实施方案中,监视功能跟踪(1640)用户交互序列的进展,并且基 于确定监视功能已进入结束状态(例如,对于或相对于用户交互序列的结束 状态),将所述一个或多个触觉输出发生器设定为低功率状态。
应当理解,图16A-16D中的操作被描述的特定次序仅仅是示例,并非旨 在指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到 多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参 考本文所述的其他方法(例如,方法600,800,1000,1200,1400,1800和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图16A-16D描述的 方法1600。例如,上文参考方法1600所述的触觉输出、触觉输出发生器、 触觉输出发生器状态、用户交互、用户界面元素和用户界面操纵,任选地具 有本文参考本文所述的其他方法(例如,方法600,800,1000,1200,1400,1800 和2000)描述的触觉输出、触觉输出发生器、触觉输出发生器状态、用户交 互、用户界面元素和用户界面操纵的特征中的一者或多者。为了简明起见, 这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图17示出根据各种所述实施方案的原理进行配置 的电子设备1700的功能框图。该设备的功能块任选地由执行各种所述实施方 案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应 当理解,图17中所述的功能块任选地被组合或被分离为子块,以便实现各种 所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块 的任何可能的组合或分离或进一步限定。
如图17中所示,电子设备1700包括被配置为显示用户界面的显示单元 1702(例如,包括显示器112)、被配置为接收触摸输入(例如,在表面(诸 如显示单元1702的显示表面)上)的触敏表面单元1704、被配置为生成一 个或多个触觉输出的一个或多个触觉输出发生器单元1706、以及与显示单元1702、触敏表面单元1704和一个或多个触觉输出发生器单元1706耦接的处 理单元1708。在一些实施方案中,处理单元1708包括下列子单元中的一者 或多者:显示使能单元1710、检测单元1712、状态设置单元1714、触觉输 出使能单元1716、确定单元1718和滚动使能单元1720。
在一些实施方案中,处理单元1708被配置为使能在显示单元1702上显 示(例如,使用显示使能单元1710)用户界面。在使能在显示单元1702上 显示用户界面时且在一个或多个触觉输出发生器单元1706处于低功率状态 时,处理单元1708检测(例如,使用检测单元1712)经由触敏表面单元1704 进行的第一用户交互。处理单元1708被配置为响应于检测到第一用户交互, 将一个或多个触觉输出发生器单元1706设定为低延迟状态(例如,使用状态 设置单元1714)。处理单元1708被配置为在将一个或多个触觉输出发生器 单元1706设定为低延迟状态之后,检测(例如,使用检测单元1712)作为 与第一用户交互相同的用户交互序列的一部分的第二用户交互。处理单元 1708被配置为响应于检测到第二用户交互,使能生成对应于第二用户交互的 触觉输出(例如,使用触觉输出使能单元1716)。
在一些实施方案中,第一用户交互和第二用户交互被检测为触敏表面单 元1704上的连续触摸输入的一部分,该连续触摸输入横穿显示单元1702上 所显示的用户界面的部件序列。
在一些实施方案中,第一用户交互是触敏表面单元1704上的接触的压 下。在一些实施方案中,第一用户交互是在检测到触敏表面单元1704上的接 触的压下之后接触的变化。
在一些实施方案中,监视功能跟踪用户交互序列的进展。基于确定(例 如,使用确定单元1718进行)监视功能已进入监视功能已开始监视用户交互 序列的起始状态,将一个或多个触觉输出发生器单元1706改变(例如,使用 状态设置单元1714)为低延迟状态,并且基于确定(例如,使用确定单元1718 进行)监视功能已进入变化状态,生成(例如,使用触觉输出使能单元1716) 触觉输出。
在一些实施方案中,监视功能跟踪用户交互序列的进展。基于确定(例 如,使用确定单元1718进行)监视功能已进入对应于触觉输出的变化状态之 前的变化状态,将一个或多个触觉输出发生器单元1706改变(例如,使用状 态设置单元1714)为低延迟状态,并且基于确定(例如,使用确定单元1718 进行)监视功能已进入对应于触觉输出的变化状态,生成(例如,使用触觉 输出使能单元1716)触觉输出。
在一些实施方案中,处理单元1708被进一步配置为检测(例如,使用 检测单元1712)用户交互序列的结束。处理单元1708被配置为响应于检测 到用户交互序列的结束,将一个或多个触觉输出发生器单元1706设定为低功 率状态(例如,使用状态设置单元1714)。
在一些实施方案中,监视功能跟踪用户交互序列的进展,并且基于确定 (例如,使用确定单元1718进行)监视功能已进入结束状态,将一个或多个 触觉输出发生器单元1706设定(例如,使用状态设置单元1714)为低功率 状态。
在一些实施方案中,用户交互序列对应于触敏表面单元1704上的连续 触摸输入,该连续触摸输入横穿显示单元1702上所显示的用户界面的部件序 列,并且处理单元1708被进一步配置为使能使用相同波形生成两个或更多个 触觉输出的序列(例如,使用触觉输出使能单元1716)。
在一些实施方案中,处理单元1708被配置为在使能响应于检测到第二 用户交互而生成触觉输出之后,根据确定(例如,使用确定单元1718进行) 在小于自第二用户交互起的预定义时间段发生第三用户交互,放弃响应于检 测到(例如,使用检测单元1712)作为与第一用户交互和第二用户交互相同 的用户交互序列的一部分的第三用户交互来生成后续的触觉输出(例如,使 用触觉输出使能单元1716)。
在一些实施方案中,处理单元1708使能响应于触敏表面单元1704上的 用户输入而使一组菜单项滚动(例如,使用滚动使能单元1720),其中用户 交互序列包括滚动到或滚动经过用户界面中的选择位置的、该组菜单项中的 相应菜单项系列。
在一些实施方案中,处理单元1708使能响应于触敏表面单元1704上的 用户输入而使一组日期部件或时间部件项滚动(例如,使用滚动使能单元 1720),其中用户交互序列包括滚动到或滚动经过用户界面中的选择位置的 日期部件或时间部件项系列。
在一些实施方案中,用户交互序列对应于触敏表面单元1704上的触摸 输入,该触摸输入横穿显示单元1702上所显示的软键系列,并且处理单元 1708使能生成一个或多个触觉输出(例如,使用触觉输出使能单元1716), 所述一个或多个触觉输出对应于到达相对于软键序列的预定义位置的触摸输 入。
在一些实施方案中,用户交互序列包括事件序列,该事件序列对应于在 显示单元1702上所显示的用户界面中将对象从初始位置拖动到另一位置的 不同阶段。在一些实施方案中,拖动对象的不同阶段包括对象提起阶段和对 象置放阶段。在一些实施方案中,拖动对象的不同阶段包括对应于对象相对 于用户界面特征弹跳就位的对象弹跳阶段,并且触觉输出对应于对象相对于 用户界面特征弹跳就位。
上文参考图16A-16D所述的操作任选地由图1A-1B或图17中所描绘的 部件来实现。例如,检测操作1604、设定操作1610和生成操作1614任选地 由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类 器170中的事件监视器171检测触敏显示器112上的接触,并且事件分配器 模块174将事件信息递送到应用136-1。应用136-1的相应事件识别器180将 事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的 第一接触是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如 对用户界面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当 检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或 子事件的检测相关联的事件处理程序190。事件处理程序190任选地使用或 调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一 些实施方案中,事件处理程序190访问相应GUI更新器178来更新应用所显 示的内容。类似地,本领域技术人员会清楚地知道基于在图1A至图1B中所 示的部件可如何实现其他过程。
图18A-18C是示出根据一些实施方案的基于与前一触觉输出生成的时间 间隔来有条件地生成触觉输出的方法1800的流程图。在具有显示器、触敏表 面以及用于检测与触敏表面的接触强度的一个或多个传感器的电子设备(例 如,设备300,图3,或便携式多功能设备100,图1A)处执行方法1800。 在一些实施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与 显示器集成。在一些实施方案中,显示器与触敏表面是分开的。方法1800 中的一些操作任选地被组合,和/或一些操作的顺序任选地被改变。
如下所述,方法1800提供基于时间间隔来提供触觉输出的增强方式。 基于与先前触觉输出的时间间隔来放弃触觉输出的生成,可减少触觉输出的 过多生成,从而保护触觉输出发生器。此外,基于与先前触觉输出的时间间 隔来放弃触觉输出的生成,可减少用户过多接收触觉输出,从而让用户聚焦 于更重要的触觉输出。因此,这保护了设备并且使得用户设备界面更有效(例 如,通过提供更重要的触觉输出并且减少在操作设备/与设备交互时的用户错 误和/或非预期操作)。
设备接收(1802)对第一用户界面操作的第一请求。
第一用户界面操作是(1804)与第一触觉输出相关联的相应用户界面元素 中第一类型的变化。
响应于接收到第一请求(1806),设备执行(1808)第一用户界面操作,并且 生成(1810)第一触觉输出。
在执行第一用户界面操作之后,设备接收(1812)对与第二触觉输出相关 联的第二用户界面操作的第二请求。
响应于接收到第二请求(1814),根据确定(1816)对第二用户界面操作的第 二请求包括对与第二触觉输出相关联的用户界面中第一类型的变化的实例的 请求,执行如下所述的操作(例如,如本文参考图5JJJ更详细所述)。
设备确定(1818)从与生成触觉输出的相应用户界面元素中第一类型的变 化的最近在先实例相对应的时间点,到与第二请求所要求的相应用户界面元 素中第一类型的变化相对应的时间点的时间间隔。在一些实施方案中,由触 觉输出的请求时间、与用户界面变化相关联的时间、或触觉输出时间(实际 的和预计的)来测量时间间隔。
根据确定(1820)该时间间隔小于预定义时间段,设备执行第二用户界面 操作而不生成第二触觉输出(例如,如本文参考请求和图5JJJ的触觉输出图 5170a中的触觉输出更详细所述)。
在一些实施方案中,时间间隔是(1822)从为相应用户界面元素中第一类 型的变化的最近在先实例生成的触觉输出的开始到第二触觉输出的开始来确 定的。在一些实施方案中,预定义时间段比为相应用户界面元素中第一类型 的变化的最近在先实例生成的触觉输出的持续时间更长。
根据确定(1824)该时间间隔大于预定义时间段,设备执行第二用户界面 操作并生成第二触觉输出(例如,如本文参考请求和图5JJJ的触觉输出图 5170a中的触觉输出更详细所述)。
在一些实施方案中,根据(1826)确定对第二用户界面操作的第二请求不 包括对相应用户界面元素中第一类型的变化的实例的请求,设备将第二触觉 输出与所述一个或多个触觉输出发生器所生成的其他触觉输出混合,而不考 虑该时间间隔是否小于预定义时间段(例如,如本文参考请求和图5JJJ的触 觉输出图5170b中的触觉输出更详细所述)。
在一些实施方案中,在执行第二用户界面操作之后,设备接收(1828)对 与第三触觉输出相关联的第三用户界面操作的第三请求。响应于接收到对第 三用户界面操作的第三请求,根据确定对第三用户界面操作的第三请求包括 对与第三触觉输出相关联的用户界面中第一类型的变化的实例的请求,设备 确定从与生成触觉输出的相应用户界面元素中第一类型的变化的最近在先实 例相对应的时间点,到与第三请求所要求的相应用户界面元素中第一类型的 变化相对应的时间点的第二时间间隔。根据确定第二时间间隔小于预定义时 间段,设备执行第三用户界面操作,而不生成第三触觉输出。根据确定第二 时间间隔大于预定义时间段,设备执行第三用户界面操作并生成第三触觉输 出。
在一些实施方案中,第一触觉输出和第三触觉输出(1830)与对应于触敏 表面上的连续触摸输入的、用户交互序列中的第一和第三用户交互(例如, 响应于连续触摸输入而横穿用户界面元素序列,诸如菜单项、日期或时间部 件项或软键的序列)同步。在一些实施方案中,第一触觉输出、第二触觉输 出和第三触觉输出分别对应于该序列中的第一元素、第二元素和第三元素。 在一些实施方案中,相应触觉输出的生成与横穿对应相应用户界面元素的连 续触摸输入同步。然而,在一些实施方案中,如果该输入太快横穿该序列,则不会生成其中的一种或多种触觉输出。在一些实施方案中,即使例如不生 成第二触觉输出,第一触觉输出和第三触觉输出的生成也分别与横穿第一元 素和第三元素的连续触摸输入同步(例如,不考虑是否生成第二触觉输出)。
在一些实施方案中,响应于接收到第三请求(1832),根据确定对第三用 户界面操作的第三请求不包括相应用户界面元素中第一类型的变化的实例, 设备将第三触觉输出与所述一个或多个触觉输出发生器所生成的其他触觉输 出混合,而不考虑第二时间间隔是否小于预定义时间段(例如,如本文参考 请求和图5JJJ的触觉输出图5170a和5170b中的触觉输出更详细所述)。
应当理解,图18A-18C中的操作被描述的特定次序仅仅是示例,并非旨 在指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到 多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参 考本文所述的其他方法(例如,方法600,800,1000,1200,1400,1600和2000) 描述的其他过程的细节同样以类似的方式适用于上文参考图18A-18C描述的 方法1800。例如,上文参考方法1800所述的用户界面元素、用户界面操作 和触觉输出,任选地具有本文参考本文所述的其他方法(例如,方法600,800,1000,1200,1400,1600和2000)描述的用户界面元素、用户界面操作和触觉 输出的特征中的一者或多者。为了简明起见,这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图19示出根据各种所述实施方案的原理进行配置 的电子设备1900的功能框图。该设备的功能块任选地由执行各种所述实施方 案的原理的硬件、软件、或硬件和软件的组合来实现。本领域的技术人员应 当理解,图19中所述的功能块任选地被组合或被分离为子块,以便实现各种 所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功能块 的任何可能的组合或分离或进一步限定。
如图19中所示,电子设备1900包括被配置为显示用户界面的显示单元 1902(例如,包括显示器112)、被配置为接收触摸输入(例如,在表面(诸 如显示单元1902的显示表面)上)的触敏表面单元1904、被配置为生成一 个或多个触觉输出的一个或多个触觉输出发生器单元1906、以及与显示单元 1902、触敏表面单元1904和一个或多个触觉输出发生器单元1906耦接的处 理单元1908。在一些实施方案中,处理单元1908包括下列子单元中的一者 或多者:接收单元1910、执行单元1912、触觉输出使能单元1914、确定单 元1916、混合单元1918和同步单元1920。
在一些实施方案中,处理单元1908被配置为接收(例如,使用接收单 元1910)对第一用户界面操作的第一请求,其中第一用户界面操作是与第一 触觉输出相关联的相应用户界面元素中第一类型的变化。处理单元1908被配 置为响应于接收到第一请求,执行(例如,使用执行单元1912)第一用户界 面操作,并且使能生成第一触觉输出(例如,使用触觉输出使能单元1914)。 处理单元1908被配置为在执行第一用户界面操作之后,接收(例如,使用接 收单元1910)对与第二触觉输出相关联的第二用户界面操作的第二请求。处 理单元1908被配置为响应于接收到第二请求,根据确定(例如,使用确定单 元1916进行)对第二用户界面操作的第二请求包括对与第二触觉输出相关联 的用户界面中第一类型的变化的实例的请求,确定从与生成触觉输出的相应 用户界面元素中第一类型的变化的最近在先实例相对应的时间点,到与第二 请求所要求的相应用户界面元素中第一类型的变化相对应的时间点的时间间 隔(例如,使用确定单元1916)。处理单元1908被配置为根据确定(例如, 使用确定单元1916进行)该时间间隔小于预定义时间段,执行第二用户界面 操作(例如,使用执行单元1912),而不使能生成第二触觉输出;以及根据 确定该时间间隔大于预定义时间段,执行第二用户界面操作(例如,使用执 行单元1912)并且使能生成第二触觉输出(例如,使用触觉输出使能单元 1914)。
在一些实施方案中,时间间隔是从为相应用户界面元素中第一类型的变 化的最近在先实例生成的触觉输出的开始到第二触觉输出的开始来确定的 (例如,使用确定单元1916),并且预定义时间段比为相应用户界面元素中 第一类型的变化的最近在先实例生成的触觉输出的持续时间更长。
在一些实施方案中,处理单元1908被配置为响应于接收到第二请求, 根据确定(例如,使用确定单元1916进行)对第二用户界面操作的第二请求 不包括对相应用户界面元素中第一类型的变化的实例的请求,将第二触觉输 出与一个或多个触觉输出发生器单元1906所生成的其他触觉输出混合(例 如,使用混合单元1918和/或触觉输出使能单元1914),而不考虑该时间间 隔是否小于预定义时间段。
在一些实施方案中,处理单元1908被配置为在执行第二用户界面操作 之后,接收(例如,使用接收单元1910)对与第三触觉输出相关联的第三用 户界面操作的第三请求。处理单元1908被配置为响应于接收到对第三用户界 面操作的第三请求,根据确定(例如,使用确定单元1916进行)对第三用户 界面操作的第三请求包括对与第三触觉输出相关联的用户界面中第一类型的 变化的实例的请求,确定(例如,使用确定单元1916)从与生成触觉输出的 相应用户界面元素中第一类型的变化的最近在先实例相对应的时间点,到与 第三请求所要求的相应用户界面元素中第一类型的变化相对应的时间点的第 二时间间隔。处理单元1908被配置为根据确定(例如,使用确定单元1916 进行)第二时间间隔小于预定义时间段,执行第三用户界面操作(例如,使 用执行单元1912)而不使能生成第三触觉输出。处理单元1908被配置为根 据确定(例如,使用确定单元1916进行)第二时间间隔大于预定义时间段, 执行第三用户界面操作(例如,使用执行单元1912)并使能生成第三触觉输 出(例如,使用触觉输出使能单元1914)。
在一些实施方案中,处理单元1908被配置为响应于接收到第三请求, 根据确定对第三用户界面操作的第三请求不包括相应用户界面元素中第一类 型的变化的实例,将第三触觉输出与一个或多个触觉输出发生器单元1906 所生成的其他触觉输出混合(例如,使用混合单元1918和/或触觉输出使能 单元1914),而不考虑第二时间间隔是否小于预定义时间段。
在一些实施方案中,第一触觉输出和第三触觉输出与对应于触敏表面单 元1904上的连续触摸输入的、用户交互序列中的第一和第三用户交互同步 (例如,使用同步单元1920、混合单元1918和/或触觉输出使能单元1914)。
上文参考图18A-18C所述的操作任选地由图1A-1B或图19中所描绘的 部件来实现。例如,接收操作1802、执行操作1808和生成操作1810任选地 由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类 器170中的事件监视器171检测触敏显示器112上的接触,并且事件分配器 模块174将事件信息递送到应用136-1。应用136-1的相应事件识别器180将 事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的 第一接触是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如 对用户界面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当 检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或 子事件的检测相关联的事件处理程序190。事件处理程序190任选地使用或 调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一 些实施方案中,事件处理程序190访问相应GUI更新器178来更新应用所显 示的内容。类似地,本领域技术人员会清楚地知道基于在图1A至图1B中所 示的部件可如何实现其他过程。
图20A-20B是示出根据一些实施方案的基于输入的量值和用户界面元素 的维度来生成触觉输出的方法2000的流程图。在具有显示器、触敏表面以及 用于检测与触敏表面的接触强度的一个或多个传感器的电子设备(例如,设 备300,图3;或便携式多功能设备100,图1A)处执行方法2000。在一些 实施方案中,显示器是触摸屏显示器,并且触敏表面在显示器上或与显示器 集成。在一些实施方案中,显示器与触敏表面是分开的。方法2000中的一些 操作任选地被组合,和/或一些操作的顺序任选地被改变。
如下所述,方法2000提供使用独立于应用的软件模块来提供触觉输出 的增强方式。使用独立于应用的软件基于来自应用软件的信息来提供触觉输 出,这提供了在使用各种软件应用时提供一致用户体验的通用用户界面框架。 向用户提供通用用户界面框架,这增强了此类软件应用及执行此类软件应用 的设备的可用性。此外,方法2000提供基于输入的量值来提供触觉输出的直 观方式。基于输入量值的触觉输出与触觉输出的用户预期相符。继而,这些 特征增强了设备的可操作性并且使得用户设备界面更有效(例如,通过帮助用户提供正确输入并且减少在操作设备/与设备交互时的用户错误和/或非预 期操作)。此外,该方法减小软件应用的大小并且使得此类软件应用的执行 更快。对于电池驱动的电子设备,确保用户更快且更有效地使用软件应用, 可节省功率并延长电池充电之间的时间。
设备在独立于应用的模块(例如,独立于应用的软件模块260,图1D) 处,从应用接收(2002)用户界面信息(例如,信息272,图1D)。
在一些实施方案中,独立于应用的模块包括(2004)电子设备的操作系统 (例如,操作系统126,图1A和3)或包括于该操作系统中。
用户界面信息对应(2006)于具有由应用的特定于应用的模块定义的一个 或多个维度的一个或多个所显示的用户界面元素。
在一些实施方案中,用户界面元素的所述一个或多个维度包括(2008)用 户界面元素的范围以及用户界面元素可暂时滚动越过显示区域边缘(例如, 显示器边缘)的范围,如本文参考图5P-5Y更详细所述。例如,滚动越过显 示区域边缘一直保持到使得滚动越过显示区域边缘的输入的结束,或基于用 户界面元素响应于在滚动方向上具有速度的输入而产生的模拟动量,此时用 户界面元素往回滚动,使得用户界面元素完全位于显示区域内。在一些实施 方案中,在用户界面元素达到最小缩放尺寸时生成触觉输出。在一些实施方 案中,在用户界面元素达到用户界面元素可暂时缩放超过最小缩放尺寸的量 时生成触觉输出。在一些实施方案中,用户界面元素在缩放超过最小缩放尺 寸之后弹跳回最小缩放尺寸时生成触觉输出。
在一些实施方案中,用户界面元素的所述一个或多个维度包括(2010)用 户界面元素的最大缩放尺寸以及用户界面元素可暂时缩放超过最大缩放尺寸 的量(例如,缩放超过最大缩放尺寸一直保持到使得缩放超过最大缩放尺寸 的输入的结束,此时用户界面元素返回到最大缩放尺寸)。在一些实施方案 中,在用户界面元素达到最大缩放尺寸时生成触觉输出,如本文参考图 5Z-5EE更详细所述。在一些实施方案中,在用户界面元素达到用户界面元素 可暂时缩放超过最大缩放尺寸的量时生成触觉输出。在一些实施方案中,用户界面元素在缩放超过最大缩放尺寸之后弹跳回最大缩放尺寸时生成触觉输 出。
在一些实施方案中,用户界面元素的所述一个或多个维度包括(2012)用 户界面元素的最小缩放尺寸以及用户界面元素可暂时缩放超过最小缩放尺寸 的量(例如,缩放超过最小缩放尺寸一直保持到使得缩放超过最小缩放尺寸 的输入的结束,此时用户界面元素返回到最小缩放尺寸)。在一些实施方案 中,在用户界面元素达到最小缩放尺寸时生成触觉输出,如本文参考图5F-5I 更详细所述。在一些实施方案中,在用户界面元素达到用户界面元素可暂时 缩放超过最小缩放尺寸的量时生成触觉输出。在一些实施方案中,用户界面 元素在缩放超过最小缩放尺寸之后弹跳回最小缩放尺寸时生成触觉输出。
接下来,设备接收(2014)指向一个或多个所显示的用户界面元素的输入 (例如,对应于用户输入的位置变化)。在一些实施方案中,设备通过从应 用或从其他信道(例如,对该应用的UI进行更新的模块)接收输入的位置变 化来检测输入的位置变化。
接下来,设备在独立于应用的模块处,基于输入的量值(例如,距离、 速度、强度等)和由特定于应用的模块定义的所述一个或多个维度来确定 (2016)要生成的一个或多个触觉输出。在一些实施方案中,设备基于输入的 量值(或更一般而言,参数),根据一个或多个所显示的用户界面元素的位 置或比例变化来确定所述一个或多个触觉输出。
接下来,设备使用所述一个或多个触觉输出发生器生成(2018)所确定的 一个或多个触觉输出(例如,使用附录B中所述的UIEdgeFeedbackGenerator 类或其实例)。
在一些实施方案中,独立于应用的模块通过将预定义物理模型应用于所 接收的输入的一个或多个参数(例如,输入的速度的量值)来确定(2020)所 述一个或多个触觉输出的量值。
在一些实施方案中,独立于应用的模块基于所显示的用户界面元素的相 应元素的边缘是否已超过预定义边界来确定(2022)是否生成相应触觉输出 (例如,如本文参考图5P-5II和5NN-5PP更详细所述)。
在一些实施方案中,独立于应用的模块基于所显示的用户界面元素的相 应元素的参数(例如,尺寸)是否已超过预定义限度来确定(2024)是否生成 相应触觉输出。
在一些实施方案中,独立于应用的模块基于所显示的用户界面元素的相 应元素的边缘是否已超过预定义边界,以及是否检测到相应的用户触摸输入, 来确定(2026)是否生成相应触觉输出(例如,在检测到接触时以橡胶带效应 滚动,或在检测到接触时执行放大或缩小操作)。
应当理解,图20A-20B中的操作被描述的特定次序仅仅是示例,并非旨 在指示所述次序是操作可被执行的唯一次序。本领域的普通技术人员会想到 多种方式来对本文所述的操作进行重新排序。另外,应当指出的是,本文参 考本文所述的其他方法(例如,方法600,800,1000,1200,1400,1600和1800) 描述的其他过程的细节同样以类似的方式适用于上文参考图20A-20B描述的 方法2000。例如,上文参考方法2000所述的触觉输出、用户界面元素、用 户界面操作、用户界面信息、软件应用、独立于应用的模块、触觉输出量值, 任选地具有本文参考本文所述的其他方法(例如,方法600,800,1000,1200, 1400,1600和1800)描述的触觉输出、用户界面元素、用户界面操作、用户 界面信息、软件应用、独立于应用的模块、触觉输出量值的特征中的一者或 多者。为了简明起见,这里不再赘述这些细节。
上述信息处理方法中的操作任选地通过运行信息处理装置中的一个或 多个功能模块来实现,该信息处理装置诸如为通用处理器(例如,如以上相 对于图1A和图3所描述的)或特定于应用的芯片。
根据一些实施方案,图21示出根据各种所述实施方案的原理进行配置 的电子设备2100的功能框图。该设备的功能块任选地由进行各种所描述的实 施方案的原则的硬件、软件、或硬件和软件的组合来实现。本领域的技术人 员应当理解,图21中所述的功能块任选地被组合或被分离为子块,以便实现 各种所描述的实施方案的原理。因此,本文的描述任选地支持本文所述的功 能块的任何可能的组合或分离或进一步限定。
如图21中所示,电子设备2100包括被配置为显示用户界面的显示单元 2102(例如,对应于显示器112)、被配置为接收触摸输入(例如,在表面 (诸如显示单元2102的显示表面)上)的触敏表面单元2104、被配置为生 成一个或多个触觉输出的一个或多个触觉输出发生器单元2106、以及与显示 单元2102、触敏表面单元2104和一个或多个触觉输出发生器单元2106耦接 的处理单元2108。在一些实施方案中,处理单元2108包括下列子单元中的一者或多者:信息接收单元2110、输入接收单元211、确定单元2114和触觉 输出使能单元2116。
在一些实施方案中,处理单元2108被配置为在独立于应用的模块处, 从应用接收用户界面信息(例如,使用信息接收单元2110),其中用户界面 信息对应于具有由应用的特定于应用的模块定义的一个或多个维度的一个或 多个所显示的用户界面元素。处理单元2108被配置为接收(例如,使用输入 接收单元2112)指向一个或多个所显示的用户界面元素的输入。处理单元 2108被配置为在独立于应用的模块处,基于该输入的量值和由特定于应用的 模块定义的所述一个或多个维度来确定要生成的一个或多个触觉输出(例如, 使用确定单元2114),以及使能使用一个或多个触觉输出发生器单元2106 生成(例如,使用触觉输出使能单元2116)所确定的一个或多个触觉输出。
在一些实施方案中,独立于应用的模块包括电子设备2100的操作系统 或包括于该操作系统中。在一些实施方案中,独立于应用的模块通过将预定 义物理模型应用于所接收的输入的一个或多个参数来确定所述一个或多个触 觉输出的量值。
在一些实施方案中,独立于应用的模块基于所显示的用户界面元素的相 应元素的边缘是否已超过预定义边界来确定(例如,使用确定单元2114)是 否生成相应触觉输出。在一些实施方案中,独立于应用的模块基于所显示的 用户界面元素的相应元素的参数是否已超过预定义限度来确定(例如,使用 确定单元2114)是否生成相应触觉输出。在一些实施方案中,独立于应用的 模块基于所显示的用户界面元素的相应元素的边缘是否已超过预定义边界, 以及是否检测到相应用户触摸输入,来确定(例如,使用确定单元2114)是 否生成相应触觉输出。
在一些实施方案中,用户界面元素的维度包括用户界面元素的范围以及 用户界面元素可暂时滚动越过显示区域边缘的范围。在一些实施方案中,用 户界面元素的维度包括用户界面元素的最大缩放尺寸以及用户界面元素可暂 时缩放超过最大缩放尺寸的量。在一些实施方案中,用户界面元素的维度包 括用户界面元素的最小缩放尺寸以及用户界面元素可暂时缩放超过最小缩放 尺寸的量。
上文参考图20A-20B所述的操作任选地由图1A-1B或图21中所描绘的 部件来实现。例如,接收操作2002、确定操作2016和生成操作2018任选地 由事件分类器170、事件识别器180和事件处理程序190来实现。事件分类 器170中的事件监视器171检测触敏显示器112上的接触,并且事件分配器 模块174将事件信息递送到应用136-1。应用136-1的相应事件识别器180将 事件信息与相应事件定义186进行比较,并且确定触敏表面上第一位置处的 第一接触是否(或该设备的旋转是否)对应于预定义的事件或子事件,诸如 对用户界面上的对象的选择、或该设备从一个取向到另一个取向的旋转。当 检测到相应的预定义的事件或子事件时,事件识别器180激活与对该事件或 子事件的检测相关联的事件处理程序190。事件处理程序190任选地使用或 调用数据更新器176或对象更新器177来更新应用程序内部状态192。在一 些实施方案中,事件处理程序190访问相应GUI更新器178来更新应用所显 示的内容。类似地,本领域技术人员会清楚地知道基于在图1A至图1B中所 示的部件可如何实现其他过程。
出于解释的目的,前面的描述是通过参考具体实施方案来描述的。然而, 上面的例示性论述并非旨在是穷尽的或将本发明限制为所公开的精确形式。 根据以上教导内容,很多修改形式和变型形式都是可能的。选择和描述实施 方案是为了最佳地阐明本发明的原理及其实际应用,以便由此使得本领域的 其他技术人员能够最佳地使用具有适合于所构想的特定用途的各种修改的本 发明以及各种所描述的实施方案。
附录A
UIFeedbackGenerator(API)
动机
架构概述
图22A是示例性反馈架构的图表。
UIKit位于CoreAudio顶部以播放音频和触觉反馈,并且提供称为UIFeedbackGenerator的高级API。其是语义层,也就是将产生触觉和/或音频 反馈的用户交互的表示。其从用户界面获取输入并处理该输入以生成并播放 反馈。
例如,我们希望在以下情况下有相同反馈:
·在UIDatePicker中旋转轮盘以改变所选择的日期
·当您在应用图标上进行“3D Touch”时,突出显示不同Home屏幕快 捷动作
·在键盘中选择不同变音符
这三种使用案例均由相同选择反馈发生器表示。
我们计划暴露的反馈发生器列表是:
·选择(选择改变)
·冲击(碰撞和制动)
·通知(自发通知)
该架构允许UIKit在整个系统中改变反馈发生器有何感觉,而无需改变 每个使用站点。该设计让我们能够快速地对系统范围交互的触觉进行迭代。 采取反馈发生器对于客户端而言较容易,并且对其现有代码具有最小侵入性, 即便是执行输入的复杂处理以确定要播放的适当反馈的反馈发生器。最后, 通过提供明确定义的反馈发生器的有限组,我们可以在一定程度上确保在整 个系统中如何使用反馈的一致性。
详细设计
我们计划暴露的唯一反馈APIs是从UIFeedbackGenerator继承的一些反 馈发生器类。
基类—UIFeedbackGenerator
UIFeedbackGenerator是我们所有反馈发生器的抽象基类。其不能被直接 实例化。
反馈发生器准备
当直接调用反馈发生器类的反馈生成方法时,UIKit首先需要初启底层 软件和硬件栈,这会引起实际播放反馈之前的明显延迟(约200ms)。
为了减轻这个问题,UIFeedbackGenerator基类包含方法prepare,其用于 为即将发生的反馈做好一切准备。该方法可被调用多次,并且如果之后没有 触发反馈,也是可以的。一旦做好准备,延迟就被显著降低到约60ms。
在做好准备时,反馈发生器会使用昂贵的软件和硬件资源,因此其应当 在该状态下保持有限时间。在短时间后或直到对象解除分配为止,其会回到 空闲状态。
示例
Objective-C
//使反馈发生器为即将发生的反馈做好准备
[feedbackGenerator prepare];
//稍后对反馈发生器执行一些操作
//具有最少反馈延迟
[feedbackGenerator something];
Swift
//使反馈发生器为即将发生的反馈做好准备
feedbackGenerator.prepare()
//稍后对反馈发生器执行一些操作
//具有最少反馈延迟
feedbackGenerator.something()
内置反馈发生器
选择反馈发生器
在改变选择时使用UISelectionFeedbackGenerator。
每当选择改变时,客户端都只需要调用-selectionChanged,这会触发反馈 播放。
示例
改变菜单中的选择。
Objective-C
UISelectionFeedbackGenerator*selectionFeedbackGenerator=[[UISelectionFeedbackGenerator alloc]init];
//当用户开始与部件交互时,
//通常处于手势识别器的Began(开始)状态
[selectionFeedbackGenerator prepare];
//当用户的手指四处移动而另作选择时,
//通常处于手势识别器的Changed(改变)状态,
//当所选择的行改变时
[selectionFeedbackGenerator selectionChanged];
Swift
let selectionFeedbackGenerator=UISelectionFeedbackGenerator()
//当用户开始与部件交互时,
//通常处于手势识别器的Began(开始)状态
selectionFeedbackGenerator.prepare();
//当用户的手指四处移动而另作选择时,
//通常处于手势识别器的Changed(改变)状态,
//当所选择的行改变时
selectionFeedbackGenerator.selectionChanged();
冲击反馈发生器
UIImpactFeedbackGenerator用于碰撞和制动。
UIImpactFeedbackGenerator在项目碰撞或跨越制动器时生成反馈冲击反 馈发生器被配置有表示冲击总量值(大体而言,项目的“质量”)的样式。
客户端在发生冲击时调用-impactOccurred。
示例
对象跨越制动器并碰撞。
UINotificationFeedbackGenerator生成用于自发通知的反馈,一般通过因 先前用户交互而发生的某个异步事件触发(例如,摇晃以撤销警示显示,Apple Pay付款成功)。
客户端简单调用通过该通知类型的-notificationOccurred:,这将触发适当 的反馈。
示例
显示带有错误反馈的警示控制器。
对现有代码的影响
使用_UITapticEngine的现有第一方客户端将需要转换成使用适当的公 用或专用UIFeedbackGenerator子类,或Peek&Pop的新 UIPreviewInteraction API。
常见问题
如果我不调用prepare会发生什么?
如果您不调用prepare,您仍会获得正确的反馈播放,但可能出现延迟。 事先调用该方法是确保最佳延迟和反馈体验的优化。
如果我不持续调用prepare会发生什么?
如果您不持续调用prepare,UIKit会设法履行,但在某一时刻可能忽略 您的调用,以防止应用在未实际触发反馈时保持硬件发热。
如果我调用方法“在反馈发生器上生成反馈”然后立即释放/解除分配, 会发生什么?是否仍能感觉到反馈?
是的,因为反馈发生器对不同对象调度反馈事件,故不必实际上播放。 一旦反馈完成播放,硬件就会回到空闲状态-前提条件是其他反馈发生器未同 时播放。
如果第三方客户端希望拥有更复杂的触觉会怎样?
我们目前不支持这项功能,但可能未来在UIKit中或直接在CoreAudio 中实现。
第三方客户端可以禁用或定制对UIKit内置控件的反馈吗?
不可以,为了在整个系统中提供统一的体验,我们不允许这种情况。
日期选取器
我们来了解一下日期选取器的具体示例(图22B)。
日期选取器由4个可独立转动的轮盘组成,这些轮盘可同时旋转。因此, 我们将使用UISelectionFeedbackGenerator的4个实例,以在每个实例中选择 新项目时提供反馈。
日期选取器所使用的UISelectionFeedbackGenerator的特征是音频和触觉 的强度和音量与轮盘转动速度成比例。每个轮盘将在其自身反馈发生器上调 用selectionChanged,该反馈发生器将基于调用频率来计算速度。然后反馈发 生器将在内部调制反馈,以为最终用户提供美妙感觉。
另外,我们希望限制所有选择反馈发生器中所播放的反馈的全局频率, 以避免给用户带来过多振动。
为了实现这种丰富的体验,日期选取器的每个轮盘(假定它们是 UIScrollView的子类)将需要该简单代码:
附录B
UIFeedbackGenerator补充
架构概述
图22C是示出示例性系统的概览的图表。
我们来逐一探讨一下这些层,从底层开始。
低级:Core Audio AVHapticPlayer和系统声音服务
AVHapticPlayer是触觉系统的低级入口点。该层由Core Audio公开发表。 其允许UIKit驱动离散触觉并调制连续触觉。其还让UIKit告知系统如何划 分触觉请求的优先级。意图是使该层仅被UIKit使用。这将保持UIKit作为 AVHapticPlayer的唯一客户端,并且允许我们对不同触觉感觉快速迭代。
Core Audio系统声音服务APIs可播放遗留触觉(例如,peek&pop触觉) 以及声音(例如,键盘点击、设备锁定/解锁声音)。新UIKit UIFeedback栈 使用系统声音服务来播放这些声音和遗留触觉,以及我们希望随同触觉反馈 播放的系统声音。
中级:UIKit UIFeedback
UIFeedback类表示可播放的反馈,它可以是触觉和/或音频。不同使用案 例的子类有:离散开-关触觉(例如,“Peek”或“Pop”)的UIDiscreteFeedback、 连续触觉(例如,连续振动)的UIContinuousFeedback以及可将多个离散和 连续反馈组成为更复杂模式的UIFeedbackPattern。
当UIFeedback实例被告知要播放时,其移交给UIFeedbackEngine,后者 负责使用低级Core Audio APIs准备硬件,然后调度和播放反馈。
该UIFeedback层主要被UIKit使用,以实现下述的高级 UIFeedbackGeneratorAPI。具有特殊需求的内部客户端可直接使用 UIFeedback,但此类实例极其有限(目前还没有)。
高级:UIKit UIFeedbackGenerator(API)
UIFeedbackGenerator是将产生触觉和/或音频反馈的用户交互的高级表 示。
与UI同步
为了使您的UI与反馈同步并且确保两者同时发生,您可以调用 prepareWithCompletionHandler:并且在处理程序中执行您的UI和反馈代码, 该处理程序将在主线程上调用。这将确保所生成的反馈具有最小延迟并且与 UI同步地体验到。
success参数告知您是否将对处理程序内部调用的动作实际播放反馈。
示例
如果您希望显示将与反馈同步的某个UI。
拖动反馈发生器
UIDragFeedbackGenerator用于交互式拖放和重新排序。
NS_ASSUME_NONNULL_END
UIDragFeedbackGenerator在项目被拖动并重新排序时生成反馈。拖动发 生器具有要在所拖动的项目弹跳就位时使用的子类 UIDragSnappingFeedbackGenerator。
拖动发生器受用户交互驱动,因此应当在用户交互开始/结束/取消时进 行适当调用。然后每当所拖动的项目移动时,客户端都应当调用-positionUpdated,并且(如果使用弹跳样式)在所拖动的项目弹跳就位时调 用-snappedToFinalPosition。
示例
拖放对象。
Objective-C
UIDragFeedbackGenerator*dragGenerator=[UIDragFeedbackGeneratorgeneratorWithCoordinateSpace:self];
//当用户交互开始时,
//通常处于手势识别器的Began(开始)状态
[dragGenerator userInteractionStarted];
//当用户在屏幕上移动所拖动的对象时
//预计会被调用许多次
[dragGenerator positionUpdated];
//当主要置放目标改变时,
//例如从一个区域移动到另一个区域
[dragGenerator dropTargetUpdated];
//当用户交互停止时,
//通常处于手势识别器的Ended(结束)状态
[dragGenerator userInteractionEnded];
边缘反馈发生器
UIEdgeFeedbackGenerator在达到边缘或限度时使用。
NS_ASSUME_NONNULL_END
UIEdgeFeedbackGenerator在达到和/或超过边缘或限度时生成反馈。每个 边缘发生器被创建为具有用于特定用途的样式,从而影响所生成的反馈。边 缘发生器为一维的,并且被配置用于单轴线。其还使用距离(即,该轴线中 的视图尺寸)和extentBeyondDistance(即,最大橡胶带距离;该位置可移动 超过该距离多远)进行配置。
UIZoomEdgeFeedbackGenerator是在达到和/或超过缩放限度时生成反馈 的边缘发生器的子类。其使用最小和最大缩放比例以及最小/最大暂时缩放比 例(缩放的等效橡胶带效应)进行配置。
边缘和缩放边缘发生器两者均受用户交互驱动,因此应当在用户交互开 始/结束/取消时进行适当调用。然后每当值改变时,客户端只需要调用 -positionUpdated:或-zoomScaleUpdated:。发生器处理这些输入以播放反馈;例 如,在达到边缘时,发生器在该时间播放具有与速度成比例的强度的触觉。
示例
实现滑块样UIControl子类。
UIKit部件的补充
UIKit的若干部件已采取反馈并暴露新APIs以控制如何产生该反馈。它 们采取所暴露的发生器属性的形式,该发生器属性可被设定为零以移除该发 生器的反馈,或在客户端想要定制反馈体验时被设定为不同对象(通常,以 不同样式创建相同对象)。
暴露反馈发生器而非仅布尔属性允许未来的API扩展,而无需再次改变 所有UIKit部件APIs,并且仅聚焦于反馈发生器类和子类。
UISwitch API补充
UISwitch在开关切换值时使用重定目标发生器来提供反馈。
Objective-C
@interface UISwitch()
@property(nonatomic,strong,nullable)UIImpactFeedbackGenerator *impactFeedbackGenerator;
@end
UIPickerView API补充
UIPickerView在选取器视图的部件(轮盘)改变选择时使用重定目标发 生器来提供反馈。
Objective-C
@interface UIPickerView()
@property(nonatomic,strong,nullable)UIRetargetFeedbackGenerator *retargetFeedbackGenerator;
@end
UIDatePicker API补充
UIDatePicker在日期选取器的部件(轮盘)改变选择时使用重定目标发 生器来提供反馈。
Objective-C
@interface UIDatePicker()
@property(nonatomic,strong,nullable)UIRetargetFeedbackGenerator *retargetFeedbackGenerator;
@end
UIRefreshControl API补充
UIRefreshControl在控件开始刷新时使用冲击发生器来提供反馈。
Objective-C
@interface UIRefreshControl()
@property(nonatomic,strong,nullable)UIImpactFeedbackGenerator *refreshFeedbackGenerator;
@end
UIScrollView API补充
UIScrollView在用户达到可滚动内容区域的边缘(橡胶带效应开始的位 置)时,以及在用户用两个手指进行捏合的情况下达到缩放限度时,使用边 缘发生器来提供反馈。由于滚动视图可水平地和竖直地滚动,其使用两个独 立边缘发生器,每条轴线一个。其还使用一个缩放边缘发生器。
Objective-C
@interface UIScrollView()
@property(nonatomic,strong,nullable)UIEdgeFeedbackGenerator *horizontalFeedbackGenerator;
@property(nonatomic,strong,nullable)UIEdgeFeedbackGenerator *verticalFeedbackGenerator;
@property(nonatomic,strong,nullable)UIZoomEdgeFeedbackGenerator *zoomFeedbackGenerator;
@end
UISlider API补充
UISlider在滑块(指示器旋钮)到达滑块的左或右边缘时使用边缘发生 器来提供反馈。由于滑块是严格水平的,其暴露单个边缘发生器。
Objective-C
@interface UISlider()
@property(nonatomic,strong,nullable)UIEdgeFeedbackGenerator *edgeFeedbackGenerator;
@end
UITableView API补充
UITableView在用户对表格视图中的行进行重新排序时使用拖动发生器 来提供反馈,并且在用户使用索引栏切换到另一部分时使用重定目标发生器。
Objective-C
@interface UITableView()
@property(nonatomic,strong,nullable)UIRetargetFeedbackGenerator *indexRetargetFeedbackGenerator;
@property(nonatomic,strong,nullable) UIDragSnappingFeedbackGenerator*reorderFeedbackGenerator;
@end
UICollectionView API补充
UICollectionView在用户对集合视图中的项目进行重新排序时使用拖动 发生器来提供反馈。
Objective-C
@interface UICollectionView()
@property(nonatomic,strong,nullable) UIDragSnappingFeedbackGenerator*reorderFeedbackGenerator;
@end
Claims (45)
1.一种方法,包括:
在具有显示器、触敏表面和一个或多个触觉输出发生器的电子设备处:
当所述一个或多个触觉输出发生器处于低功率状态时,
接收用户交互已开始的指示,其中:
所述用户交互的相应部分与触觉输出相关联;并且
所述低功率状态是其中以第一延迟量生成触觉输出的状态;
响应于接收到与所述触觉输出相关联的所述用户交互已开始的所述指示,根据确定所述指示符合触觉输出发生器准备标准,在第一时间将所述一个或多个触觉输出发生器设置为低延迟状态,其中所述低延迟状态是其中以比所述第一延迟量低的第二延迟量生成所述触觉输出的状态;以及
在将所述一个或多个触觉输出发生器设置为所述低延迟状态之后:
根据确定所述用户交互已经到达所述用户交互的相应部分,所述相应部分与从所述第一时间起预定义的时间量已过之前的所述触觉输出相关联,并且所述一个或多个触觉输出发生器仍处于所述低延迟状态,使用所述一个或多个触觉输出发生器以所述第二延迟量生成所述触觉输出;以及
根据确定在从所述第一时间起至少所述预定义的时间量内没有生成触觉输出,将所述一个或多个触觉输出发生器从所述低延迟状态转变到所述低功率状态。
2.根据权利要求1所述的方法,包括:
在将所述一个或多个触觉输出发生器设置为所述低延迟状态之后:
根据确定所述用户交互已经到达所述用户交互的所述相应部分,所述相应部分与从所述第一时间起所述预定义的时间量已过之后的所述触觉输出相关联,并且所述一个或多个触觉输出发生器已经回到所述低功率状态,使用所述一个或多个触觉输出发生器以所述第一延迟量生成所述触觉输出。
3.根据权利要求1所述的方法,其中:
所述一个或多个触觉输出发生器的所述低功率状态具有比所述低延迟状态更低的功耗;并且
所述低延迟状态具有比所述低功率状态更低的延迟以用于生成触觉输出。
4.根据权利要求1所述的方法,其中所述低功率状态是所述一个或多个触觉输出发生器的预定义不活动状态。
5.根据权利要求1所述的方法,其中所述低延迟状态选自:
第一低延迟状态和第二低延迟状态,其中:
所述第一低延迟状态比所述第二低延迟状态消耗更少的功率,并且具有比所述第二低延迟状态更高的延迟。
6.根据权利要求5所述的方法,其中所述低延迟状态是由所述设备的操作系统基于所述设备使用的节能协议从所述第一低延迟状态和所述第二低延迟状态中选择的。
7.根据权利要求1所述的方法,包括响应于接收到与所述触觉输出相关联的所述用户交互已开始的所述指示,根据确定所述指示不符合所述触觉输出发生器准备标准,将所述一个或多个触觉输出发生器保持在所述低功率状态并且放弃将所述一个或多个触觉输出发生器设置为所述低延迟状态。
8.根据权利要求1所述的方法,其中与所述触觉输出相关联的所述用户交互包括位置信息,所述位置信息对应于具有所述触敏表面上的位置的触摸输入或具有所述触敏表面上的位置的用户界面对象。
9.根据权利要求8所述的方法,还包括根据所述用户交互的所述位置信息确定所述触觉输出的位置。
10.根据权利要求9所述的方法,其中所述一个或多个触觉输出发生器包括两个或更多个触觉输出发生器,每个均具有对应位置或者位置和大小,并且确定所述触觉输出的所述位置包括根据所述用户交互的所述位置信息以及所述两个或更多个触觉输出发生器的所述位置或者位置和大小来确定所述触觉输出的所述位置。
11.根据权利要求1所述的方法,包括从第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,其中将所述一个或多个触觉输出发生器设置为所述低延迟状态是响应于由所述第一软件应用发出的将所述一个或多个触觉输出发生器设置为所述低延迟状态的所述命令而执行的。
12.根据权利要求1所述的方法,包括从第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,以及在所述电子设备的操作系统处,接收所发出的命令并确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
13.根据权利要求1所述的方法,包括使用所述电子设备的操作系统来确定何时将所述一个或多个触觉输出发生器设置为所述低延迟状态。
14.根据权利要求13所述的方法,其中所述电子设备的所述操作系统根据所述电子设备的状态来确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
15.根据权利要求13所述的方法,其中所述电子设备的所述操作系统响应于第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,根据关于所述第一软件应用的将所述一个或多个触觉输出发生器设置为所述低延迟状态的先前命令的历史信息,确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
16.一种电子设备,包括:
显示器;
触敏表面;
一个或多个触觉输出发生器;
一个或多个处理器;和
存储器,所述存储器存储由所述一个或多个处理器执行的一个或多个程序,所述一个或多个程序包括用于执行以下操作的指令:
当所述一个或多个触觉输出发生器处于低功率状态时,接收用户交互已开始的指示,其中:
所述用户交互的相应部分与触觉输出相关联;并且
所述低功率状态是其中以第一延迟量生成触觉输出的状态;
响应于接收到与所述触觉输出相关联的所述用户交互已开始的所述指示,根据确定所述指示符合触觉输出发生器准备标准,在第一时间将一个或多个触觉输出发生器设置为低延迟状态,其中所述低延迟状态是其中以比所述第一延迟量低的第二延迟量生成所述触觉输出的状态;以及
在将所述一个或多个触觉输出发生器设置为所述低延迟状态之后:
根据确定所述用户交互已经到达所述用户交互的相应部分,所述相应部分与从所述第一时间起预定义的时间量已过之前的所述触觉输出相关联,并且所述一个或多个触觉输出发生器仍处于所述低延迟状态,使用所述一个或多个触觉输出发生器以所述第二延迟量生成所述触觉输出;以及
根据确定在从所述第一时间起至少所述预定义的时间量内没有生成触觉输出,将所述一个或多个触觉输出发生器从所述低延迟状态转变到所述低功率状态。
17.根据权利要求16所述的电子设备,其中所述一个或多个程序包括用于执行以下操作的指令:
在将所述一个或多个触觉输出发生器设置为所述低延迟状态之后:
根据确定所述用户交互已经到达所述用户交互的所述相应部分,所述相应部分与从所述第一时间起所述预定义的时间量已过之后的所述触觉输出相关联,并且所述一个或多个触觉输出发生器已经回到所述低功率状态,使用所述一个或多个触觉输出发生器以所述第一延迟量生成所述触觉输出。
18.根据权利要求16所述的电子设备,其中:
所述一个或多个触觉输出发生器的所述低功率状态具有比所述低延迟状态更低的功耗;并且
所述低延迟状态具有比所述低功率状态更低的延迟以用于生成触觉输出。
19.根据权利要求16所述的电子设备,其中所述低功率状态是所述一个或多个触觉输出发生器的预定义不活动状态。
20.根据权利要求16所述的电子设备,其中所述低延迟状态选自:
第一低延迟状态和第二低延迟状态,其中:
所述第一低延迟状态比所述第二低延迟状态消耗更少的功率,并且具有比所述第二低延迟状态更高的延迟。
21.根据权利要求20所述的电子设备,其中所述低延迟状态是由所述设备的操作系统基于所述设备使用的节能协议从所述第一低延迟状态和所述第二低延迟状态中选择的。
22.根据权利要求16所述的电子设备,其中所述一个或多个程序包括用于执行以下操作的指令:响应于接收到与所述触觉输出相关联的所述用户交互已开始的所述指示,根据确定所述指示不符合所述触觉输出发生器准备标准,将所述一个或多个触觉输出发生器保持在所述低功率状态并且放弃将所述一个或多个触觉输出发生器设置为所述低延迟状态。
23.根据权利要求16所述的电子设备,其中与所述触觉输出相关联的所述用户交互包括位置信息,所述位置信息对应于具有所述触敏表面上的位置的触摸输入或具有所述触敏表面上的位置的用户界面对象。
24.根据权利要求23所述的电子设备,其中所述一个或多个程序包括指令,所述指令用于根据所述用户交互的所述位置信息确定所述触觉输出的位置。
25.根据权利要求24所述的电子设备,其中所述一个或多个触觉输出发生器包括两个或更多个触觉输出发生器,每个均具有对应位置或者位置和大小,并且确定所述触觉输出的所述位置包括根据所述用户交互的所述位置信息以及所述两个或更多个触觉输出发生器的所述位置或者位置和大小来确定所述触觉输出的所述位置。
26.根据权利要求16所述的电子设备,其中所述一个或多个程序包括用于执行以下操作的指令:从第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,其中将所述一个或多个触觉输出发生器设置为所述低延迟状态是响应于由所述第一软件应用发出的将所述一个或多个触觉输出发生器设置为所述低延迟状态的所述命令而执行的。
27.根据权利要求16所述的电子设备,其中所述一个或多个程序包括用于执行以下操作的指令:从第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,以及在所述电子设备的操作系统处,接收所发出的命令并确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
28.根据权利要求16所述的电子设备,其中所述一个或多个程序包括指令,所述指令用于使用所述电子设备的操作系统来确定何时将所述一个或多个触觉输出发生器设置为所述低延迟状态。
29.根据权利要求28所述的电子设备,其中所述一个或多个程序包括指令,所述指令用于使所述电子设备的所述操作系统根据所述电子设备的状态来确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
30.根据权利要求28所述的电子设备,其中所述一个或多个程序包括用于执行以下操作的指令:所述电子设备的所述操作系统响应于第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,根据关于所述第一软件应用的将所述一个或多个触觉输出发生器设置为所述低延迟状态的先前命令的历史信息,确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
31.一种存储一个或多个程序的计算机可读存储介质,所述一个或多个程序包括指令,所述指令当由具有显示器、触敏表面和一个或多个触觉输出发生器的电子设备执行时,使得所述设备:
当所述一个或多个触觉输出发生器处于低功率状态时,接收用户交互已开始的指示,其中:
所述用户交互的相应部分与触觉输出相关联;并且
所述低功率状态是其中以第一延迟量生成触觉输出的状态;
响应于接收到与所述触觉输出相关联的所述用户交互已开始的所述指示,根据确定所述指示符合触觉输出发生器准备标准,在第一时间将一个或多个触觉输出发生器设置为低延迟状态,其中所述低延迟状态是其中以比所述第一延迟量低的第二延迟量生成所述触觉输出的状态;以及
在将所述一个或多个触觉输出发生器设置为所述低延迟状态之后:
根据确定所述用户交互已经到达所述用户交互的相应部分,所述相应部分与从所述第一时间起预定义的时间量已过之前的所述触觉输出相关联,并且所述一个或多个触觉输出发生器仍处于所述低延迟状态,使用所述一个或多个触觉输出发生器以所述第二延迟量生成所述触觉输出;以及
根据确定在从所述第一时间起至少所述预定义的时间量内没有生成触觉输出,将所述一个或多个触觉输出发生器从所述低延迟状态转变到所述低功率状态。
32.根据权利要求31所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令当由所述电子设备执行时,使得所述设备:
在将所述一个或多个触觉输出发生器设置为所述低延迟状态之后:
根据确定所述用户交互已经到达所述用户交互的所述相应部分,所述相应部分与从所述第一时间起所述预定义的时间量已过之后的所述触觉输出相关联,并且所述一个或多个触觉输出发生器已经回到所述低功率状态,使用所述一个或多个触觉输出发生器以所述第一延迟量生成所述触觉输出。
33.根据权利要求31所述的计算机可读存储介质,其中:
所述一个或多个触觉输出发生器的所述低功率状态具有比所述低延迟状态更低的功耗;并且
所述低延迟状态具有比所述低功率状态更低的延迟以用于生成触觉输出。
34.根据权利要求31所述的计算机可读存储介质,其中所述低功率状态是所述一个或多个触觉输出发生器的预定义不活动状态。
35.根据权利要求31所述的计算机可读存储介质,其中所述低延迟状态选自:
第一低延迟状态和第二低延迟状态,其中:
所述第一低延迟状态比所述第二低延迟状态消耗更少的功率,并且具有比所述第二低延迟状态更高的延迟。
36.根据权利要求35所述的计算机可读存储介质,其中所述低延迟状态是由所述设备的操作系统基于所述设备使用的节能协议从所述第一低延迟状态和所述第二低延迟状态中选择的。
37.根据权利要求31所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令当由所述电子设备执行时,使得所述设备:响应于接收到与所述触觉输出相关联的所述用户交互已开始的所述指示,根据确定所述指示不符合所述触觉输出发生器准备标准,将所述一个或多个触觉输出发生器保持在所述低功率状态并且放弃将所述一个或多个触觉输出发生器设置为所述低延迟状态。
38.根据权利要求31所述的计算机可读存储介质,其中与所述触觉输出相关联的所述用户交互包括位置信息,所述位置信息对应于具有所述触敏表面上的位置的触摸输入或具有所述触敏表面上的位置的用户界面对象。
39.根据权利要求38所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令当由所述电子设备执行时,使得所述设备根据所述用户交互的所述位置信息来确定所述触觉输出的位置。
40.根据权利要求39所述的计算机可读存储介质,其中所述一个或多个触觉输出发生器包括两个或更多个触觉输出发生器,每个均具有对应位置或者位置和大小,并且确定所述触觉输出的所述位置包括根据所述用户交互的所述位置信息以及所述两个或更多个触觉输出发生器的所述位置或者位置和大小来确定所述触觉输出的所述位置。
41.根据权利要求31所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令当由所述电子设备执行时,使得所述设备:从第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,其中将所述一个或多个触觉输出发生器设置为所述低延迟状态是响应于由所述第一软件应用发出的将所述一个或多个触觉输出发生器设置为所述低延迟状态的所述命令而执行的。
42.根据权利要求31所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令当由所述电子设备执行时,使得所述设备:从第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,以及在所述电子设备的操作系统处,接收所发出的命令并确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
43.根据权利要求31所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令当由所述电子设备执行时,使得所述设备:使用所述电子设备的操作系统来确定何时将所述一个或多个触觉输出发生器设置为所述低延迟状态。
44.根据权利要求43所述的计算机可读存储介质,其中所述一个或多个程序包括指令,所述指令用于使所述电子设备的所述操作系统根据所述电子设备的状态来确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
45.根据权利要求43所述的计算机可读存储介质,其中所述一个或多个程序包括用于执行以下操作的指令:所述电子设备的所述操作系统响应于第一软件应用发出将所述一个或多个触觉输出发生器设置为所述低延迟状态的命令,根据关于所述第一软件应用的将所述一个或多个触觉输出发生器设置为所述低延迟状态的先前命令的历史信息,确定是否将所述一个或多个触觉输出发生器设置为所述低延迟状态。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911032592.4A CN110794967B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201911023034.1A CN110764617B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
Applications Claiming Priority (6)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201662384159P | 2016-09-06 | 2016-09-06 | |
US62/384,159 | 2016-09-06 | ||
US15/271,073 | 2016-09-20 | ||
US15/271,073 US9753541B1 (en) | 2016-09-06 | 2016-09-20 | Devices, methods, and graphical user interfaces for generating tactile outputs |
US15/271,653 US9690383B1 (en) | 2016-09-06 | 2016-09-21 | Devices, methods, and graphical user interfaces for generating tactile outputs |
US15/271,653 | 2016-09-21 |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911023034.1A Division CN110764617B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201911032592.4A Division CN110794967B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN107797655A true CN107797655A (zh) | 2018-03-13 |
CN107797655B CN107797655B (zh) | 2019-11-01 |
Family
ID=59009331
Family Applications (5)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911023034.1A Active CN110764617B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201710728497.2A Active CN107797655B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201911032592.4A Active CN110794967B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201710736331.5A Active CN107870690B (zh) | 2016-09-06 | 2017-08-24 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201710735308.4A Active CN107797657B (zh) | 2016-09-06 | 2017-08-24 | 用于生成触觉输出的设备、方法和图形用户界面 |
Family Applications Before (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911023034.1A Active CN110764617B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
Family Applications After (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911032592.4A Active CN110794967B (zh) | 2016-09-06 | 2017-08-23 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201710736331.5A Active CN107870690B (zh) | 2016-09-06 | 2017-08-24 | 用于生成触觉输出的设备、方法和图形用户界面 |
CN201710735308.4A Active CN107797657B (zh) | 2016-09-06 | 2017-08-24 | 用于生成触觉输出的设备、方法和图形用户界面 |
Country Status (5)
Country | Link |
---|---|
US (9) | US9753541B1 (zh) |
EP (5) | EP3291056B1 (zh) |
CN (5) | CN110764617B (zh) |
AU (7) | AU2017213578B1 (zh) |
DK (1) | DK201670720A1 (zh) |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109144520A (zh) * | 2018-09-03 | 2019-01-04 | 武汉斗鱼网络科技有限公司 | Android中不同对象间的信息交互方法、装置、设备和存储介质 |
CN113253848A (zh) * | 2021-06-10 | 2021-08-13 | 武汉市聚芯微电子有限责任公司 | 用于控制触觉反馈的方法、装置和包括该装置的电子设备 |
CN113296638A (zh) * | 2021-06-10 | 2021-08-24 | 武汉市聚芯微电子有限责任公司 | 用于控制触觉反馈的方法、装置和包括该装置的电子设备 |
CN115826750A (zh) * | 2018-09-11 | 2023-03-21 | 苹果公司 | 基于内容的触觉输出 |
US11829576B2 (en) | 2013-09-03 | 2023-11-28 | Apple Inc. | User interface object manipulations in a user interface |
US11921926B2 (en) | 2018-09-11 | 2024-03-05 | Apple Inc. | Content-based tactile outputs |
US11941191B2 (en) | 2014-09-02 | 2024-03-26 | Apple Inc. | Button functionality |
US12001650B2 (en) | 2014-09-02 | 2024-06-04 | Apple Inc. | Music user interface |
US12050766B2 (en) | 2019-12-04 | 2024-07-30 | Apple Inc. | Crown input for a wearable electronic device |
Families Citing this family (120)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104487930A (zh) | 2012-05-09 | 2015-04-01 | 苹果公司 | 用于移动和放置用户界面对象的设备、方法和图形用户界面 |
WO2013169842A2 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for selecting object within a group of objects |
DE112013002412T5 (de) | 2012-05-09 | 2015-02-19 | Apple Inc. | Vorrichtung, Verfahren und grafische Benutzeroberfläche zum Bereitstellen von Rückmeldung für das Wechseln von Aktivierungszuständen eines Benutzerschnittstellenobjekts |
WO2013169870A1 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for transitioning between display states in response to gesture |
WO2013169843A1 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for manipulating framed graphical objects |
CN106201316B (zh) | 2012-05-09 | 2020-09-29 | 苹果公司 | 用于选择用户界面对象的设备、方法和图形用户界面 |
WO2013169849A2 (en) | 2012-05-09 | 2013-11-14 | Industries Llc Yknots | Device, method, and graphical user interface for displaying user interface objects corresponding to an application |
WO2013169865A2 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for moving a user interface object based on an intensity of a press input |
DE112013002387T5 (de) | 2012-05-09 | 2015-02-12 | Apple Inc. | Vorrichtung, Verfahren und grafische Benutzeroberfläche für die Bereitstellung taktiler Rückkopplung für Operationen in einer Benutzerschnittstelle |
EP3401773A1 (en) | 2012-05-09 | 2018-11-14 | Apple Inc. | Device, method, and graphical user interface for displaying additional information in response to a user contact |
CN105144057B (zh) | 2012-12-29 | 2019-05-17 | 苹果公司 | 用于根据具有模拟三维特征的控制图标的外观变化来移动光标的设备、方法和图形用户界面 |
CN107831991B (zh) | 2012-12-29 | 2020-11-27 | 苹果公司 | 用于确定是滚动还是选择内容的设备、方法和图形用户界面 |
WO2014192092A1 (ja) * | 2013-05-29 | 2014-12-04 | 楽天株式会社 | 情報処理装置、情報処理方法及び情報処理プログラム |
USD741875S1 (en) * | 2013-06-10 | 2015-10-27 | Apple Inc. | Display screen or portion thereof with graphical user interface |
KR102157289B1 (ko) * | 2013-07-12 | 2020-09-17 | 삼성전자주식회사 | 데이터 처리 방법 및 그 전자 장치 |
US10545657B2 (en) | 2013-09-03 | 2020-01-28 | Apple Inc. | User interface for manipulating user interface objects |
CN110262861B (zh) | 2013-09-03 | 2022-08-09 | 苹果公司 | 用于操纵用户界面对象的用户界面 |
EP3044647A1 (en) * | 2013-09-11 | 2016-07-20 | Google Technology Holdings LLC | Electronic device and method for detecting presence and motion |
CN118192869A (zh) | 2014-06-27 | 2024-06-14 | 苹果公司 | 尺寸减小的用户界面 |
US10228751B2 (en) | 2014-08-06 | 2019-03-12 | Apple Inc. | Low power mode |
US9647489B2 (en) | 2014-08-26 | 2017-05-09 | Apple Inc. | Brownout avoidance |
USD771123S1 (en) * | 2014-09-01 | 2016-11-08 | Apple Inc. | Display screen or portion thereof with multi-state graphical user interface |
KR102096146B1 (ko) | 2014-09-02 | 2020-04-28 | 애플 인크. | 가변 햅틱 출력을 위한 시맨틱 프레임워크 |
TWI676127B (zh) | 2014-09-02 | 2019-11-01 | 美商蘋果公司 | 關於電子郵件使用者介面之方法、系統、電子器件及電腦可讀儲存媒體 |
US10073590B2 (en) | 2014-09-02 | 2018-09-11 | Apple Inc. | Reduced size user interface |
US10365807B2 (en) | 2015-03-02 | 2019-07-30 | Apple Inc. | Control of system zoom magnification using a rotatable input mechanism |
US9632664B2 (en) | 2015-03-08 | 2017-04-25 | Apple Inc. | Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback |
US10095396B2 (en) | 2015-03-08 | 2018-10-09 | Apple Inc. | Devices, methods, and graphical user interfaces for interacting with a control object while dragging another object |
US9639184B2 (en) | 2015-03-19 | 2017-05-02 | Apple Inc. | Touch input cursor manipulation |
US20170045981A1 (en) | 2015-08-10 | 2017-02-16 | Apple Inc. | Devices and Methods for Processing Touch Inputs Based on Their Intensities |
EP3304251B1 (en) * | 2015-06-03 | 2023-10-11 | Razer (Asia-Pacific) Pte. Ltd. | Haptics devices and methods for controlling a haptics device |
US9891811B2 (en) | 2015-06-07 | 2018-02-13 | Apple Inc. | Devices and methods for navigating between user interfaces |
US9830048B2 (en) | 2015-06-07 | 2017-11-28 | Apple Inc. | Devices and methods for processing touch inputs with instructions in a web page |
US10200598B2 (en) | 2015-06-07 | 2019-02-05 | Apple Inc. | Devices and methods for capturing and interacting with enhanced digital images |
US9860451B2 (en) | 2015-06-07 | 2018-01-02 | Apple Inc. | Devices and methods for capturing and interacting with enhanced digital images |
USD791827S1 (en) * | 2015-06-24 | 2017-07-11 | Lutron Electronics Co., Inc. | Display screen or portion thereof with icon |
US10235035B2 (en) | 2015-08-10 | 2019-03-19 | Apple Inc. | Devices, methods, and graphical user interfaces for content navigation and manipulation |
US9880735B2 (en) | 2015-08-10 | 2018-01-30 | Apple Inc. | Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback |
US10712821B2 (en) | 2015-08-19 | 2020-07-14 | International Business Machines Corporation | Tactile graphical display |
DK179823B1 (en) | 2016-06-12 | 2019-07-12 | Apple Inc. | DEVICES, METHODS, AND GRAPHICAL USER INTERFACES FOR PROVIDING HAPTIC FEEDBACK |
DK201670737A1 (en) | 2016-06-12 | 2018-01-22 | Apple Inc | Devices, Methods, and Graphical User Interfaces for Providing Haptic Feedback |
USD802622S1 (en) | 2016-08-29 | 2017-11-14 | Lutron Electronics Co., Inc. | Display screen or portion thereof with graphical user interface |
JP2018036841A (ja) * | 2016-08-31 | 2018-03-08 | ソニー株式会社 | 信号処理装置、信号処理方法、プログラム、および電子機器 |
DK179278B1 (en) | 2016-09-06 | 2018-03-26 | Apple Inc | Devices, methods and graphical user interfaces for haptic mixing |
DK201670720A1 (en) | 2016-09-06 | 2018-03-26 | Apple Inc | Devices, Methods, and Graphical User Interfaces for Generating Tactile Outputs |
JP2018045407A (ja) * | 2016-09-14 | 2018-03-22 | 株式会社東海理化電機製作所 | 触覚呈示装置 |
US10599823B2 (en) * | 2016-11-18 | 2020-03-24 | Invensense, Inc. | Systems and methods for coordinating applications with a user interface |
KR102057566B1 (ko) * | 2016-11-24 | 2019-12-19 | 주식회사 하이딥 | 사용자 인터페이스 제공을 위한 터치 입력 방법 및 장치 |
JP6809209B2 (ja) * | 2016-12-22 | 2021-01-06 | 富士ゼロックス株式会社 | 表示装置及びプログラム |
JP1589999S (zh) * | 2016-12-28 | 2017-11-06 | ||
JP1590265S (zh) * | 2017-02-10 | 2017-11-06 | ||
JP1614673S (zh) | 2017-02-10 | 2018-10-01 | ||
JP1590264S (zh) | 2017-02-10 | 2017-11-06 | ||
US10813197B2 (en) * | 2017-04-10 | 2020-10-20 | Ideal Industries Lighting Llc | Wireless solid state lighting controller |
US10732714B2 (en) | 2017-05-08 | 2020-08-04 | Cirrus Logic, Inc. | Integrated haptic system |
US10353438B2 (en) * | 2017-05-15 | 2019-07-16 | Microsoft Technology Licensing, Llc | Volume adjustment on hinged multi-screen device |
DK201770372A1 (en) | 2017-05-16 | 2019-01-08 | Apple Inc. | TACTILE FEEDBACK FOR LOCKED DEVICE USER INTERFACES |
USD878402S1 (en) * | 2017-05-22 | 2020-03-17 | Subsplash Ip, Llc | Display screen or portion thereof with transitional graphical user interface |
US10921628B2 (en) * | 2017-07-20 | 2021-02-16 | Sharp Kabushiki Kaisha | Input device |
US11259121B2 (en) | 2017-07-21 | 2022-02-22 | Cirrus Logic, Inc. | Surface speaker |
KR102354016B1 (ko) * | 2017-08-22 | 2022-01-21 | 삼성전자주식회사 | 표시 장치에 표시된 콘텐트의 크기를 변경하기 위한 방법 및 그 전자 장치 |
USD872761S1 (en) * | 2017-08-25 | 2020-01-14 | Lg Electronics Inc. | Display screen with animated graphical user interface |
USD887437S1 (en) | 2017-11-09 | 2020-06-16 | Siemens Schweiz Ag | Display screen or portion thereof with graphical user interface |
JP7006184B2 (ja) * | 2017-11-27 | 2022-01-24 | 富士通株式会社 | 制御プログラム、制御方法および制御装置 |
US11363133B1 (en) | 2017-12-20 | 2022-06-14 | Apple Inc. | Battery health-based power management |
US10817307B1 (en) * | 2017-12-20 | 2020-10-27 | Apple Inc. | API behavior modification based on power source health |
US10620704B2 (en) | 2018-01-19 | 2020-04-14 | Cirrus Logic, Inc. | Haptic output systems |
JP2019133387A (ja) * | 2018-01-31 | 2019-08-08 | Dynabook株式会社 | 電子機器、ウェアラブル機器および文字入力制御方法 |
US11139767B2 (en) | 2018-03-22 | 2021-10-05 | Cirrus Logic, Inc. | Methods and apparatus for driving a transducer |
US10832537B2 (en) | 2018-04-04 | 2020-11-10 | Cirrus Logic, Inc. | Methods and apparatus for outputting a haptic signal to a haptic transducer |
US11069206B2 (en) | 2018-05-04 | 2021-07-20 | Cirrus Logic, Inc. | Methods and apparatus for outputting a haptic signal to a haptic transducer |
US11353967B2 (en) | 2018-05-31 | 2022-06-07 | Arkh Litho Holdings, LLC | Interacting with a virtual environment using a pointing controller |
US11170085B2 (en) * | 2018-06-03 | 2021-11-09 | Apple Inc. | Implementation of biometric authentication |
US11171951B2 (en) * | 2018-06-07 | 2021-11-09 | Paypal, Inc. | Device interface output based on biometric input orientation and captured proximate data |
US11269415B2 (en) * | 2018-08-14 | 2022-03-08 | Cirrus Logic, Inc. | Haptic output systems |
CN109101183B (zh) * | 2018-08-23 | 2020-11-27 | 上海天马微电子有限公司 | 显示装置及其反馈方法 |
USD900845S1 (en) * | 2018-09-07 | 2020-11-03 | Teraoka Seiko Co., Ltd. | Display screen or portion thereof with graphical user interface |
DK179888B1 (en) * | 2018-09-11 | 2019-08-27 | Apple Inc. | CONTENT-BASED TACTICAL OUTPUTS |
CN110134248B (zh) * | 2018-09-11 | 2020-12-11 | 苹果公司 | 基于内容的触觉输出 |
TWI714888B (zh) * | 2018-09-28 | 2021-01-01 | 圓展科技股份有限公司 | 操作互動觸控顯示系統之方法 |
GB201817495D0 (en) | 2018-10-26 | 2018-12-12 | Cirrus Logic Int Semiconductor Ltd | A force sensing system and method |
CN109901066A (zh) * | 2018-12-31 | 2019-06-18 | 瑞声科技(新加坡)有限公司 | 马达系统辨识方法 |
CN109857503B (zh) * | 2019-01-25 | 2023-04-07 | 北京字节跳动网络技术有限公司 | 页面交互效果自适应方法、装置与电子设备 |
USD955403S1 (en) * | 2019-02-14 | 2022-06-21 | Pax Labs, Inc. | Display screen or portion thereof with graphical user interface |
KR20210136043A (ko) | 2019-02-18 | 2021-11-16 | 에이알케이에이치 리쏘 홀딩스, 엘엘씨 | 포인팅 제어기를 사용하는 스마트 디바이스와의 상호작용 |
USD915441S1 (en) * | 2019-02-18 | 2021-04-06 | Samsung Electronics Co., Ltd. | Display screen or portion thereof with transitional graphical user interface |
USD967187S1 (en) * | 2019-03-19 | 2022-10-18 | Cps Technology Holdings Llc | Display screen or portion thereof having an icon |
US12035445B2 (en) | 2019-03-29 | 2024-07-09 | Cirrus Logic Inc. | Resonant tracking of an electromagnetic load |
US20200313529A1 (en) | 2019-03-29 | 2020-10-01 | Cirrus Logic International Semiconductor Ltd. | Methods and systems for estimating transducer parameters |
US10955955B2 (en) | 2019-03-29 | 2021-03-23 | Cirrus Logic, Inc. | Controller for use in a device comprising force sensors |
US10828672B2 (en) | 2019-03-29 | 2020-11-10 | Cirrus Logic, Inc. | Driver circuitry |
US10992297B2 (en) | 2019-03-29 | 2021-04-27 | Cirrus Logic, Inc. | Device comprising force sensors |
US10726683B1 (en) | 2019-03-29 | 2020-07-28 | Cirrus Logic, Inc. | Identifying mechanical impedance of an electromagnetic load using a two-tone stimulus |
US11644370B2 (en) | 2019-03-29 | 2023-05-09 | Cirrus Logic, Inc. | Force sensing with an electromagnetic load |
US11509292B2 (en) | 2019-03-29 | 2022-11-22 | Cirrus Logic, Inc. | Identifying mechanical impedance of an electromagnetic load using least-mean-squares filter |
US10996761B2 (en) | 2019-06-01 | 2021-05-04 | Apple Inc. | User interfaces for non-visual output of time |
US11150733B2 (en) | 2019-06-07 | 2021-10-19 | Cirrus Logic, Inc. | Methods and apparatuses for providing a haptic output signal to a haptic actuator |
US10976825B2 (en) | 2019-06-07 | 2021-04-13 | Cirrus Logic, Inc. | Methods and apparatuses for controlling operation of a vibrational output system and/or operation of an input sensor system |
KR20220024091A (ko) | 2019-06-21 | 2022-03-03 | 시러스 로직 인터내셔널 세미컨덕터 리미티드 | 디바이스 상에 복수의 가상 버튼을 구성하기 위한 방법 및 장치 |
USD956773S1 (en) | 2019-08-20 | 2022-07-05 | Pax Labs, Inc. | Display screen or portion thereof with graphical user interface |
JP2022550106A (ja) | 2019-09-24 | 2022-11-30 | アーク, インコーポレイテッド | スマートリング |
US11408787B2 (en) | 2019-10-15 | 2022-08-09 | Cirrus Logic, Inc. | Control methods for a force sensor system |
US11380175B2 (en) | 2019-10-24 | 2022-07-05 | Cirrus Logic, Inc. | Reproducibility of haptic waveform |
US11545951B2 (en) | 2019-12-06 | 2023-01-03 | Cirrus Logic, Inc. | Methods and systems for detecting and managing amplifier instability |
USD942481S1 (en) * | 2019-12-09 | 2022-02-01 | Monday.com Ltd. | Display screen or portion thereof with graphical user interface |
CN111008000B (zh) * | 2019-12-12 | 2022-01-18 | 联想(北京)有限公司 | 信息处理方法及电子设备 |
US11755111B2 (en) | 2020-03-16 | 2023-09-12 | Arkh, Inc. | Spatially aware computing hub and environment |
US11662821B2 (en) | 2020-04-16 | 2023-05-30 | Cirrus Logic, Inc. | In-situ monitoring, calibration, and testing of a haptic actuator |
WO2021252998A1 (en) * | 2020-06-12 | 2021-12-16 | Emerge Now Inc. | Method and system for the generation and management of tactile commands for tactile sensation |
JP7501159B2 (ja) * | 2020-07-01 | 2024-06-18 | コニカミノルタ株式会社 | 情報処理装置、情報処理装置の制御方法及びプログラム |
JP2023543432A (ja) * | 2020-09-22 | 2023-10-16 | グーグル エルエルシー | ユーザフィードバックによる指紋感知の案内 |
USD1009861S1 (en) | 2020-09-25 | 2024-01-02 | Arkh, Inc. | Smart ring |
US11334166B2 (en) | 2020-09-30 | 2022-05-17 | International Business Machines Corporation | Multi-sensory notifications |
US11223732B1 (en) | 2020-10-08 | 2022-01-11 | Xerox Corporation | Multi-modal multi-device alerts |
CN112462996B (zh) * | 2020-12-11 | 2023-09-08 | 北京小米移动软件有限公司 | 服务信息优化方法、服务信息优化装置及存储介质 |
US11933822B2 (en) | 2021-06-16 | 2024-03-19 | Cirrus Logic Inc. | Methods and systems for in-system estimation of actuator parameters |
US11908310B2 (en) | 2021-06-22 | 2024-02-20 | Cirrus Logic Inc. | Methods and systems for detecting and managing unexpected spectral content in an amplifier system |
US11765499B2 (en) | 2021-06-22 | 2023-09-19 | Cirrus Logic Inc. | Methods and systems for managing mixed mode electromechanical actuator drive |
US11552649B1 (en) | 2021-12-03 | 2023-01-10 | Cirrus Logic, Inc. | Analog-to-digital converter-embedded fixed-phase variable gain amplifier stages for dual monitoring paths |
USD1026032S1 (en) * | 2022-05-26 | 2024-05-07 | Expel, Inc. | Display screen with a graphical user interface |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110279381A1 (en) * | 2010-05-14 | 2011-11-17 | Research In Motion Limited | Method of providing tactile feedback and electronic device |
CN104412201A (zh) * | 2012-05-09 | 2015-03-11 | 苹果公司 | 基于跟踪窗口来改变计算设备的输出 |
CN104508618A (zh) * | 2012-05-09 | 2015-04-08 | 苹果公司 | 用于针对在用户界面中执行的操作提供触觉反馈的设备、方法和图形用户界面 |
US20150227204A1 (en) * | 2014-02-13 | 2015-08-13 | Mide Technology Corporation | Bussed haptic actuator system and method |
US20150293592A1 (en) * | 2014-04-15 | 2015-10-15 | Samsung Electronics Co., Ltd. | Haptic information management method and electronic device supporting the same |
Family Cites Families (449)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6433771B1 (en) * | 1992-12-02 | 2002-08-13 | Cybernet Haptic Systems Corporation | Haptic device attribute control |
AU2591995A (en) * | 1994-05-16 | 1995-12-05 | Apple Computer, Inc. | A system and method for customizing appearance and behavior of graphical user interfaces |
US20030040361A1 (en) | 1994-09-21 | 2003-02-27 | Craig Thorner | Method and apparatus for generating tactile feedback via relatively low-burden and/or zero burden telemetry |
US6219032B1 (en) * | 1995-12-01 | 2001-04-17 | Immersion Corporation | Method for providing force feedback to a user of an interface device based on interactions of a controlled cursor with graphical elements in a graphical user interface |
US5990869A (en) * | 1996-08-20 | 1999-11-23 | Alliance Technologies Corp. | Force feedback mouse |
JP3655438B2 (ja) * | 1997-07-17 | 2005-06-02 | 任天堂株式会社 | ビデオゲームシステム |
JP3138666B2 (ja) | 1997-08-21 | 2001-02-26 | 日本電気通信システム株式会社 | 携帯電話機 |
US6211861B1 (en) | 1998-06-23 | 2001-04-03 | Immersion Corporation | Tactile mouse device |
US8479122B2 (en) | 2004-07-30 | 2013-07-02 | Apple Inc. | Gestures for touch sensitive input devices |
US6429846B2 (en) | 1998-06-23 | 2002-08-06 | Immersion Corporation | Haptic feedback for touchpads and other touch controls |
JP2000209311A (ja) | 1999-01-13 | 2000-07-28 | Yazaki Corp | 車両用呼出応対方法 |
US7469381B2 (en) | 2007-01-07 | 2008-12-23 | Apple Inc. | List scrolling and document translation, scaling, and rotation on a touch-screen display |
US7561142B2 (en) | 1999-07-01 | 2009-07-14 | Immersion Corporation | Vibrotactile haptic feedback devices |
AU7725600A (en) | 1999-09-28 | 2001-04-30 | Immersion Corporation | Controlling haptic sensations for vibrotactile feedback interface devices |
US6424251B1 (en) | 1999-11-10 | 2002-07-23 | Matthew T. Byrne | Personal electronic device notification system |
US6560165B1 (en) | 2000-03-28 | 2003-05-06 | Diane K. Barker | Medical information appliance |
DE60138519D1 (de) | 2000-06-21 | 2009-06-10 | Seiko Epson Corp | Mobiltelefon und funkkommunikationsgerät zur gemeinsamen verarbeitung eines ankommenden anrufes |
AU2001294852A1 (en) * | 2000-09-28 | 2002-04-08 | Immersion Corporation | Directional tactile feedback for haptic feedback interface devices |
US6791536B2 (en) | 2000-11-10 | 2004-09-14 | Microsoft Corporation | Simulating gestures of a pointing device using a stylus and providing feedback thereto |
GB0029622D0 (en) * | 2000-12-05 | 2001-01-17 | Nokia Networks Oy | Improved user interface |
JP4327369B2 (ja) | 2001-02-23 | 2009-09-09 | ヤマハ株式会社 | 携帯端末、着信通知制御プログラム及び着信通知制御プログラムを記録した記録媒体 |
US6703550B2 (en) | 2001-10-10 | 2004-03-09 | Immersion Corporation | Sound data output and manipulation using haptic feedback |
KR20040062956A (ko) | 2001-11-01 | 2004-07-09 | 임머숀 코퍼레이션 | 촉각을 제공하기 위한 방법 및 장치 |
US6690387B2 (en) | 2001-12-28 | 2004-02-10 | Koninklijke Philips Electronics N.V. | Touch-screen image scrolling system and method |
JP2003288158A (ja) | 2002-01-28 | 2003-10-10 | Sony Corp | タクタイル・フィードバック機能を持つ携帯型機器 |
JP2004064117A (ja) | 2002-07-24 | 2004-02-26 | Kenwood Corp | 移動体通信端末、着信報知方法及びプログラム |
EP1406150A1 (en) | 2002-10-01 | 2004-04-07 | Sony Ericsson Mobile Communications AB | Tactile feedback method and device and portable device incorporating same |
US20040095311A1 (en) | 2002-11-19 | 2004-05-20 | Motorola, Inc. | Body-centric virtual interactive apparatus and method |
US20080133648A1 (en) | 2002-12-08 | 2008-06-05 | Immersion Corporation | Methods and Systems for Providing Haptic Messaging to Handheld Communication Devices |
US8165640B2 (en) | 2003-03-14 | 2012-04-24 | Jeffrey D Mullen | Systems and methods for providing remote incoming call notification for cellular phones |
US7886236B2 (en) | 2003-03-28 | 2011-02-08 | Microsoft Corporation | Dynamic feedback for gestures |
US7454009B2 (en) | 2003-04-25 | 2008-11-18 | International Business Machines Corporation | Ring-tone identification of urgent phone calls |
JP4240293B2 (ja) | 2003-05-27 | 2009-03-18 | 株式会社ソニー・コンピュータエンタテインメント | マルチメディア再生装置およびマルチメディア再生方法 |
JP2004363999A (ja) | 2003-06-05 | 2004-12-24 | Hitachi Ltd | 携帯電話機、携帯電話基地局サーバ及びip電話装置と電子メールシステム |
US7130664B1 (en) | 2003-06-12 | 2006-10-31 | Williams Daniel P | User-based signal indicator for telecommunications device and method of remotely notifying a user of an incoming communications signal incorporating the same |
US7669177B2 (en) | 2003-10-24 | 2010-02-23 | Microsoft Corporation | System and method for preference application installation and execution |
JP2005276089A (ja) | 2004-03-26 | 2005-10-06 | Seiko Epson Corp | 入力装置、画像表示装置及びプロジェクタ |
US20050231489A1 (en) * | 2004-04-15 | 2005-10-20 | Research In Motion Limited | System and method for providing dynamic tactile feedback on hand-held electronic devices |
US7305257B2 (en) | 2004-04-16 | 2007-12-04 | Research In Motion Limited | Portable alerter for wireless device |
JP2006011646A (ja) | 2004-06-23 | 2006-01-12 | Pioneer Electronic Corp | 触覚表示装置及び触覚表示機能付タッチパネル装置 |
US7308253B2 (en) | 2004-06-30 | 2007-12-11 | Avaya Technology Corp. | Log-based ringtone service |
US8867724B2 (en) | 2004-08-31 | 2014-10-21 | At&T Intellectual Property I, L.P. | Distinctive ring tones prompted by call urgency and context |
US8232969B2 (en) * | 2004-10-08 | 2012-07-31 | Immersion Corporation | Haptic feedback for button and scrolling action simulation in touch input devices |
US9591345B2 (en) | 2004-10-21 | 2017-03-07 | Core Wireless Licensing S.A.R.L. | Group editing of media content stored on wireless portable devices |
US7720213B2 (en) | 2004-12-30 | 2010-05-18 | Alcatel Lucent | Parameter dependent ring tones |
US8768838B1 (en) | 2005-02-02 | 2014-07-01 | Nexus Payments, LLC | Financial transactions using a rule-module nexus and a user account registry |
US8082292B2 (en) | 2005-04-18 | 2011-12-20 | Research In Motion Limited | Method and system for centralized user notification and application execution control |
US20060248183A1 (en) | 2005-04-28 | 2006-11-02 | Microsoft Corporation | Programmable notifications for a mobile device |
KR100714725B1 (ko) | 2005-08-29 | 2007-05-07 | 삼성전자주식회사 | 입력 정보의 노출을 방지하기 위한 입력 장치 및 입력 방법 |
US9166823B2 (en) | 2005-09-21 | 2015-10-20 | U Owe Me, Inc. | Generation of a context-enriched message including a message component and a contextual attribute |
US20070088560A1 (en) | 2005-10-14 | 2007-04-19 | Motorola, Inc. | Method and system for conveying context information in a personal and family security environment |
US20070106457A1 (en) | 2005-11-09 | 2007-05-10 | Outland Research | Portable computing with geospatial haptic compass |
US20070132789A1 (en) | 2005-12-08 | 2007-06-14 | Bas Ording | List scrolling in response to moving contact over list of index symbols |
US7958456B2 (en) | 2005-12-23 | 2011-06-07 | Apple Inc. | Scrolling list with floating adjacent index symbols |
KR101347851B1 (ko) | 2005-12-28 | 2014-01-03 | 히다찌긴조꾸가부시끼가이사 | 산화물 자성 재료 |
CN101375582A (zh) | 2006-01-19 | 2009-02-25 | 高通股份有限公司 | 将已分类源地址群组与振动模式相关联的方法 |
US7710958B2 (en) | 2006-01-20 | 2010-05-04 | Iona Technologies Limited | Method for recoverable message exchange independent of network protocols |
JP5129478B2 (ja) * | 2006-03-24 | 2013-01-30 | 株式会社デンソーアイティーラボラトリ | 画面表示装置 |
US8144125B2 (en) | 2006-03-30 | 2012-03-27 | Cypress Semiconductor Corporation | Apparatus and method for reducing average scan rate to detect a conductive object on a sensing device |
US7751542B2 (en) | 2006-05-04 | 2010-07-06 | Avaya Inc. | Feeble ring tones |
US20070283239A1 (en) * | 2006-05-30 | 2007-12-06 | Robert Paul Morris | Methods, systems, and computer program products for providing a user interaction model for use by a device |
JP2008033739A (ja) * | 2006-07-31 | 2008-02-14 | Sony Corp | 力覚フィードバックおよび圧力測定に基づくタッチスクリーンインターラクション方法および装置 |
US9304675B2 (en) | 2006-09-06 | 2016-04-05 | Apple Inc. | Portable electronic device for instant messaging |
US8564544B2 (en) | 2006-09-06 | 2013-10-22 | Apple Inc. | Touch screen device, method, and graphical user interface for customizing display of content category icons |
US9318108B2 (en) | 2010-01-18 | 2016-04-19 | Apple Inc. | Intelligent automated assistant |
US7809406B2 (en) | 2006-09-15 | 2010-10-05 | Sony Ericsson Mobile Communications Ab | Continued transfer or streaming of a data file after loss of a local connection |
DE102006048833A1 (de) * | 2006-10-16 | 2008-04-17 | Universität Rostock | Behandlung von Osteoporose |
WO2008075082A1 (en) | 2006-12-21 | 2008-06-26 | Symbian Software Limited | Mobile device and method of operation thereof |
US8583189B2 (en) | 2006-12-28 | 2013-11-12 | Motorola Mobility Llc | Method and apparatus for the selective use of imperceptible invites |
US7844915B2 (en) | 2007-01-07 | 2010-11-30 | Apple Inc. | Application programming interfaces for scrolling operations |
CN101232665B (zh) * | 2007-01-24 | 2012-02-22 | 北京三星通信技术研究有限公司 | 用于移动通信终端的回电设定及自动提示的方法 |
JP2008181365A (ja) | 2007-01-25 | 2008-08-07 | Mitsubishi Electric Corp | 携帯機器 |
KR100860412B1 (ko) * | 2007-02-02 | 2008-09-26 | 한국전자통신연구원 | 촉각체험 서비스 방법 및 그 시스템 |
US8098234B2 (en) | 2007-02-20 | 2012-01-17 | Immersion Corporation | Haptic feedback system with stored effects |
KR100835297B1 (ko) * | 2007-03-02 | 2008-06-05 | 광주과학기술원 | 촉감 정보 표현을 위한 노드 구조 및 이를 이용한 촉감정보 전송 방법과 시스템 |
US7801569B1 (en) | 2007-03-22 | 2010-09-21 | At&T Intellectual Property I, L.P. | Mobile communications device with distinctive vibration modes |
TWI351638B (en) | 2007-04-27 | 2011-11-01 | Htc Corp | Touch-based tab navigation method and related devi |
US8144126B2 (en) | 2007-05-07 | 2012-03-27 | Cypress Semiconductor Corporation | Reducing sleep current in a capacitance sensing system |
JP4803105B2 (ja) | 2007-05-09 | 2011-10-26 | ソニー株式会社 | 電子機器 |
US9954996B2 (en) | 2007-06-28 | 2018-04-24 | Apple Inc. | Portable electronic device with conversation management for incoming instant messages |
US8258986B2 (en) | 2007-07-03 | 2012-09-04 | Cypress Semiconductor Corporation | Capacitive-matrix keyboard with multiple touch detection |
US8026814B1 (en) | 2007-07-25 | 2011-09-27 | Pinpoint Technologies Inc. | Wireless mesh network for an asset tracking system |
US8331268B2 (en) | 2007-08-31 | 2012-12-11 | At&T Intellectual Property I, L.P. | Methods, systems, and computer-readable media for providing an event alert |
US9619143B2 (en) | 2008-01-06 | 2017-04-11 | Apple Inc. | Device, method, and graphical user interface for viewing application launch icons |
EP2040146B1 (en) | 2007-09-18 | 2020-12-09 | Microsoft Technology Licensing, LLC | Mobile terminal and method of controlling operation of the same |
US8098235B2 (en) | 2007-09-28 | 2012-01-17 | Immersion Corporation | Multi-touch device having dynamic haptic effects |
US7768838B2 (en) | 2007-10-30 | 2010-08-03 | Micron Technology, Inc. | Operating memory cells |
US20090128581A1 (en) | 2007-11-20 | 2009-05-21 | Microsoft Corporation | Custom transition framework for application state transitions |
US20090135142A1 (en) | 2007-11-27 | 2009-05-28 | Motorola, Inc. | Data entry device and method |
US9509829B2 (en) | 2007-12-28 | 2016-11-29 | Apple, Inc. | Urgent communications |
US8373549B2 (en) | 2007-12-31 | 2013-02-12 | Apple Inc. | Tactile feedback in an electronic device |
US9857872B2 (en) | 2007-12-31 | 2018-01-02 | Apple Inc. | Multi-touch display screen with localized tactile feedback |
US8577423B2 (en) | 2008-02-27 | 2013-11-05 | Palm, Inc. | Vibration tone differentiation |
US20090219252A1 (en) | 2008-02-28 | 2009-09-03 | Nokia Corporation | Apparatus, method and computer program product for moving controls on a touchscreen |
US10015158B2 (en) | 2008-02-29 | 2018-07-03 | Blackberry Limited | Methods and apparatus for use in enabling a mobile communication device with a digital certificate |
US8205157B2 (en) | 2008-03-04 | 2012-06-19 | Apple Inc. | Methods and graphical user interfaces for conducting searches on a portable multifunction device |
US9513704B2 (en) | 2008-03-12 | 2016-12-06 | Immersion Corporation | Haptically enabled user interface |
JP2009265818A (ja) | 2008-04-23 | 2009-11-12 | Denso Corp | ドライバ覚醒装置 |
EP2112579B1 (en) | 2008-04-25 | 2013-05-22 | Research In Motion Limited | Electronic device comprising touch-sensitive input surface and method of determining user-selected input |
JP2009278294A (ja) | 2008-05-13 | 2009-11-26 | Sony Ericsson Mobilecommunications Japan Inc | 情報処理装置、情報処理方法、情報処理プログラム、及び携帯端末装置 |
KR101456001B1 (ko) * | 2008-05-23 | 2014-11-03 | 엘지전자 주식회사 | 단말기 및 그 제어 방법 |
US8266550B1 (en) | 2008-05-28 | 2012-09-11 | Google Inc. | Parallax panning of mobile device desktop |
US9357052B2 (en) | 2008-06-09 | 2016-05-31 | Immersion Corporation | Developing a notification framework for electronic device events |
US8203444B2 (en) | 2008-06-10 | 2012-06-19 | Silent Call Corporation | Alerting device with supervision |
KR101498622B1 (ko) | 2008-06-25 | 2015-03-04 | 엘지전자 주식회사 | 촉각 효과를 제공하는 휴대 단말기 및 그 제어방법 |
US8306576B2 (en) | 2008-06-27 | 2012-11-06 | Lg Electronics Inc. | Mobile terminal capable of providing haptic effect and method of controlling the mobile terminal |
KR101556522B1 (ko) | 2008-06-27 | 2015-10-01 | 엘지전자 주식회사 | 촉각 효과를 제공하는 휴대 단말기 및 그 제어방법 |
KR101443341B1 (ko) | 2008-06-30 | 2014-11-03 | 엘지전자 주식회사 | 휴대 단말기 및 그 동작제어 방법 |
KR101474963B1 (ko) | 2008-07-01 | 2014-12-19 | 엘지전자 주식회사 | 휴대 단말기 및 그 제어방법 |
US9600175B2 (en) | 2008-07-14 | 2017-03-21 | Sony Corporation | Method and system for classification sign display |
EP2327201B1 (en) | 2008-07-15 | 2018-09-05 | Immersion Corporation | Systems and methods for transmitting haptic messages |
GB2462465B (en) | 2008-08-08 | 2013-02-13 | Hiwave Technologies Uk Ltd | Touch sensitive device |
US8604364B2 (en) * | 2008-08-15 | 2013-12-10 | Lester F. Ludwig | Sensors, algorithms and applications for a high dimensional touchpad |
US8402381B2 (en) | 2008-09-23 | 2013-03-19 | International Business Machines Corporation | Automatically arranging widgets of a model within a canvas using iterative region based widget relative adjustments |
EP2175344B1 (en) * | 2008-10-06 | 2020-02-12 | Samsung Electronics Co., Ltd. | Method and apparatus for displaying graphical user interface depending on a user's contact pattern |
KR101529502B1 (ko) | 2008-10-16 | 2015-06-17 | 엘지전자 주식회사 | 인스턴트 메시지 제어방법과 이를 이용한 이동 단말기 |
KR101569176B1 (ko) * | 2008-10-30 | 2015-11-20 | 삼성전자주식회사 | 오브젝트 실행 방법 및 장치 |
JP5003655B2 (ja) | 2008-11-07 | 2012-08-15 | 富士通株式会社 | 携帯端末装置 |
EP2187290A1 (en) | 2008-11-18 | 2010-05-19 | Studer Professional Audio GmbH | Input device and method of detecting a user input with an input device |
JP5227769B2 (ja) | 2008-12-05 | 2013-07-03 | ソニーモバイルコミュニケーションズ, エービー | 携帯端末およびコンピュータプログラム |
JP5181093B2 (ja) | 2008-12-08 | 2013-04-10 | 韓國電子通信研究院 | タッチスクリーン及びその動作方法 |
US8886252B2 (en) | 2008-12-22 | 2014-11-11 | Htc Corporation | Method and apparatus for automatically changing operating modes in a mobile device |
US8686952B2 (en) | 2008-12-23 | 2014-04-01 | Apple Inc. | Multi touch with multi haptics |
JP4746085B2 (ja) | 2008-12-25 | 2011-08-10 | 京セラ株式会社 | 入力装置 |
US8378979B2 (en) | 2009-01-27 | 2013-02-19 | Amazon Technologies, Inc. | Electronic device with haptic feedback |
EP2396958B1 (en) | 2009-02-11 | 2013-01-02 | Nxp B.V. | Controlling an adaptation of a behavior of an audio device to a current acoustic environmental condition |
WO2010094989A1 (en) | 2009-02-20 | 2010-08-26 | Valtion Teknillinen Tutkimuskeskus | Short-rrange communication-enabled mobile device, method and related server arrangement |
US9746923B2 (en) | 2009-03-12 | 2017-08-29 | Immersion Corporation | Systems and methods for providing features in a friction display wherein a haptic effect is configured to vary the coefficient of friction |
US10705701B2 (en) | 2009-03-16 | 2020-07-07 | Apple Inc. | Device, method, and graphical user interface for moving a current position in content at a variable scrubbing rate |
KR101553842B1 (ko) | 2009-04-21 | 2015-09-17 | 엘지전자 주식회사 | 멀티 햅틱 효과를 제공하는 휴대 단말기 및 그 제어방법 |
US9658760B2 (en) | 2009-05-07 | 2017-05-23 | Creative Technology Ltd. | Methods for searching digital files on a user interface |
JP2010268086A (ja) | 2009-05-13 | 2010-11-25 | Nec Saitama Ltd | 携帯端末装置およびその着信報知出力制御方法 |
US8279194B2 (en) | 2009-05-22 | 2012-10-02 | Elo Touch Solutions, Inc. | Electrode configurations for projected capacitive touch screen |
KR101597553B1 (ko) | 2009-05-25 | 2016-02-25 | 엘지전자 주식회사 | 기능 실행 방법 및 그 장치 |
US20100302042A1 (en) | 2009-05-28 | 2010-12-02 | David Barnett | Sensor-based independent living assistant |
US8271898B1 (en) | 2009-06-04 | 2012-09-18 | Mellmo Inc. | Predictive scrolling |
US8254957B2 (en) | 2009-06-16 | 2012-08-28 | Intel Corporation | Context-based limitation of mobile device operation |
KR20100136156A (ko) | 2009-06-18 | 2010-12-28 | 삼성전자주식회사 | 터치스크린을 구비하는 휴대 단말기의 화면 스크롤 방법 및 장치 |
US8310458B2 (en) | 2009-07-06 | 2012-11-13 | Research In Motion Limited | Electronic device including a moveable touch-sensitive input and method of controlling same |
CA2761700C (en) | 2009-07-24 | 2014-12-02 | Research In Motion Limited | Method and apparatus for a touch-sensitive display |
US20110017828A1 (en) | 2009-07-24 | 2011-01-27 | Jadak, Llc | Handheld optical imaging device and method |
US8477106B2 (en) | 2009-07-29 | 2013-07-02 | Elo Touch Solutions, Inc. | System and method for a projected capacitive touchscreen having weight based coordinate determination |
US20110053577A1 (en) | 2009-08-31 | 2011-03-03 | Lee Changkee | Methods and apparatus for communicating by vibrating or moving mobile devices |
US20110055753A1 (en) | 2009-08-31 | 2011-03-03 | Horodezky Samuel J | User interface methods providing searching functionality |
US9176962B2 (en) | 2009-09-07 | 2015-11-03 | Apple Inc. | Digital media asset browsing with audio cues |
US20110074695A1 (en) | 2009-09-25 | 2011-03-31 | Peter William Rapp | Device, Method, and Graphical User Interface Using Mid-Drag Gestures |
US20130053657A1 (en) | 2009-09-28 | 2013-02-28 | Illuminare Holdings Ltd. | Intravaginal monitoring device and network |
US8131848B1 (en) | 2009-09-29 | 2012-03-06 | Jason Adam Denise | Image analysis and communication device control technology |
US8487759B2 (en) | 2009-09-30 | 2013-07-16 | Apple Inc. | Self adapting haptic device |
US9338274B2 (en) | 2009-10-02 | 2016-05-10 | Blackberry Limited | Method of interacting with electronic devices in a locked state and handheld electronic device configured to permit interaction when in a locked state |
US8279052B2 (en) | 2009-11-04 | 2012-10-02 | Immersion Corporation | Systems and methods for haptic confirmation of commands |
US8839128B2 (en) | 2009-11-25 | 2014-09-16 | Cooliris, Inc. | Gallery application for content viewing |
EP2328063B1 (en) * | 2009-11-30 | 2018-01-10 | BlackBerry Limited | Portable electronic device and method of controlling same to provide tactile feedback |
US8204548B1 (en) | 2009-12-01 | 2012-06-19 | Sprint Communications Company L.P. | System and method for mobile device application pre-emption |
US8347238B2 (en) | 2009-12-16 | 2013-01-01 | Apple Inc. | Device, method, and graphical user interface for managing user interface content and user interface elements by dynamic snapping of user interface elements to alignment guides |
US20110148608A1 (en) | 2009-12-18 | 2011-06-23 | Research In Motion Limited | Portable electronic device and method of control |
JP5437786B2 (ja) | 2009-12-21 | 2014-03-12 | 京セラ株式会社 | 触感呈示装置 |
US8386965B2 (en) | 2010-01-15 | 2013-02-26 | Apple Inc. | Techniques and systems for enhancing touch screen device accessibility through virtual containers and virtually enlarged boundaries |
US20110202843A1 (en) * | 2010-02-15 | 2011-08-18 | Robert Paul Morris | Methods, systems, and computer program products for delaying presentation of an update to a user interface |
US8548418B1 (en) | 2010-01-25 | 2013-10-01 | Sprint Spectrum L.P. | Methods and devices for distributing ringtone |
JP5635274B2 (ja) * | 2010-01-27 | 2014-12-03 | 京セラ株式会社 | 触感呈示装置および触感呈示方法 |
JP5360499B2 (ja) | 2010-02-01 | 2013-12-04 | 国立大学法人東北大学 | 力覚提示方法および力覚提示装置 |
TW201205910A (en) | 2010-02-03 | 2012-02-01 | Bayer Materialscience Ag | An electroactive polymer actuator haptic grip assembly |
US9361018B2 (en) | 2010-03-01 | 2016-06-07 | Blackberry Limited | Method of providing tactile feedback and apparatus |
US8458615B2 (en) | 2010-04-07 | 2013-06-04 | Apple Inc. | Device, method, and graphical user interface for managing folders |
KR101657543B1 (ko) | 2010-06-14 | 2016-09-22 | 엘지전자 주식회사 | 휴대 단말기 및 그 동작 제어방법 |
EP2378406B1 (en) | 2010-04-13 | 2018-08-22 | LG Electronics Inc. | Mobile terminal and method of controlling operation of the mobile terminal |
US8698766B2 (en) | 2010-04-22 | 2014-04-15 | Maxim Integrated Products, Inc. | System integration of tactile feedback and touchscreen controller for near-zero latency haptics playout |
WO2011133860A2 (en) | 2010-04-23 | 2011-10-27 | Immersion Corporation | Systems and methods for providing haptic effects |
US8671504B2 (en) | 2010-04-28 | 2014-03-18 | Denso Corporation | Cover of vehicle optical sensor and vehicle optical sensor device |
US20110271181A1 (en) | 2010-04-28 | 2011-11-03 | Acer Incorporated | Screen unlocking method and electronic apparatus thereof |
US20110267181A1 (en) | 2010-04-29 | 2011-11-03 | Nokia Corporation | Apparatus and method for providing tactile feedback for user |
US20110267294A1 (en) | 2010-04-29 | 2011-11-03 | Nokia Corporation | Apparatus and method for providing tactile feedback for user |
US20110270358A1 (en) | 2010-04-30 | 2011-11-03 | Medtronic, Inc. | Implantable medical device programming using gesture-based control |
US8451255B2 (en) | 2010-05-14 | 2013-05-28 | Arnett Ryan Weber | Method of providing tactile feedback and electronic device |
EP2386935B1 (en) | 2010-05-14 | 2015-02-11 | BlackBerry Limited | Method of providing tactile feedback and electronic device |
EP2386934B1 (en) * | 2010-05-14 | 2015-08-05 | BlackBerry Limited | Method of providing tactile feedback and electronic device |
US20120327006A1 (en) | 2010-05-21 | 2012-12-27 | Disney Enterprises, Inc. | Using tactile feedback to provide spatial awareness |
US9749176B2 (en) | 2010-06-29 | 2017-08-29 | Nokia Technologies Oy | Systems, methods, and apparatuses for providing adaptive user notifications |
US8798534B2 (en) | 2010-07-09 | 2014-08-05 | Digimarc Corporation | Mobile devices and methods employing haptics |
CN102339123B (zh) * | 2010-07-14 | 2014-10-29 | Tcl集团股份有限公司 | 根据接触面积控制振动的方法 |
US20120016879A1 (en) | 2010-07-16 | 2012-01-19 | Research In Motion Limited | Systems and methods of user interface for image display |
JP2012027875A (ja) | 2010-07-28 | 2012-02-09 | Sony Corp | 電子機器、処理方法及びプログラム |
US8766984B2 (en) | 2010-08-20 | 2014-07-01 | Qualcomm Incorporated | Graphics rendering methods for satisfying minimum frame rate requirements |
US9069760B2 (en) | 2010-08-24 | 2015-06-30 | Lg Electronics Inc. | Mobile terminal and controlling method thereof |
JP5656511B2 (ja) | 2010-08-26 | 2015-01-21 | 京セラ株式会社 | 表示装置 |
US8676274B2 (en) | 2010-08-27 | 2014-03-18 | At&T Intellectual Property I, L.P. | Devices, systems, and methods for notification of events on a wireless communication device |
FR2964761B1 (fr) | 2010-09-14 | 2012-08-31 | Thales Sa | Dispositif d'interaction haptique et procede de generation d'effets haptiques et sonores |
GB2497383A (en) | 2010-09-24 | 2013-06-12 | Qnx Software Systems Ltd | Alert display on a portable electronic device |
DE102010048745A1 (de) | 2010-10-16 | 2012-04-19 | Volkswagen Ag | Benutzerschnittstelle und Verfahren zum Bedienen einer Benutzerschnittstelle |
US20120105367A1 (en) | 2010-11-01 | 2012-05-03 | Impress Inc. | Methods of using tactile force sensing for intuitive user interface |
US8914743B2 (en) | 2010-11-12 | 2014-12-16 | Apple Inc. | Device, method, and graphical user interface for navigating a list of identifiers |
WO2012081182A1 (ja) | 2010-12-13 | 2012-06-21 | パナソニック株式会社 | 電子機器 |
US9223471B2 (en) * | 2010-12-28 | 2015-12-29 | Microsoft Technology Licensing, Llc | Touch screen control |
US9052758B2 (en) | 2010-12-31 | 2015-06-09 | Blackberry Limited | System and method for detecting accidental peripheral device disconnection |
KR101785323B1 (ko) | 2011-01-05 | 2017-10-17 | 삼성전자주식회사 | 휴대 단말기의 사용자 인터페이스 제공 방법 및 장치 |
CN102609078B (zh) * | 2011-01-20 | 2014-12-31 | 宏达国际电子股份有限公司 | 具有触觉反馈的电子装置及提供触觉反馈的方法 |
US8615511B2 (en) | 2011-01-22 | 2013-12-24 | Operational Transparency LLC | Data visualization interface |
WO2012108203A1 (ja) | 2011-02-10 | 2012-08-16 | 京セラ株式会社 | 電子機器及び電子機器の制御方法 |
JP5895852B2 (ja) | 2011-02-15 | 2016-03-30 | 日本電気株式会社 | 携帯端末装置およびその画面表示方法 |
CN102651920A (zh) * | 2011-02-24 | 2012-08-29 | 腾讯科技(深圳)有限公司 | 基于移动通信终端的操作提示方法及移动通信终端 |
US8749349B2 (en) * | 2011-03-11 | 2014-06-10 | Nokia Corporation | Method apparatus and computer program |
WO2012135373A2 (en) | 2011-04-01 | 2012-10-04 | Analog Devices, Inc. | A dedicated user interface controller for feedback responses |
JPWO2012137946A1 (ja) | 2011-04-06 | 2014-07-28 | 京セラ株式会社 | 電子機器、操作制御方法および操作制御プログラム |
US9448713B2 (en) | 2011-04-22 | 2016-09-20 | Immersion Corporation | Electro-vibrotactile display |
US9218727B2 (en) | 2011-05-12 | 2015-12-22 | Apple Inc. | Vibration in portable devices |
US8717151B2 (en) | 2011-05-13 | 2014-05-06 | Qualcomm Incorporated | Devices and methods for presenting information to a user on a tactile output surface of a mobile device |
US20120306790A1 (en) | 2011-06-02 | 2012-12-06 | Electronics And Telecommunications Research Institute | Film type apparatus for providing haptic feedback and touch screen including the same |
US9383820B2 (en) | 2011-06-03 | 2016-07-05 | Apple Inc. | Custom vibration patterns |
US9083821B2 (en) | 2011-06-03 | 2015-07-14 | Apple Inc. | Converting audio to haptic feedback in an electronic device |
JP5802830B2 (ja) | 2011-06-05 | 2015-11-04 | アップル インコーポレイテッド | 複数のアプリケーションから受信した通知を表示するためのシステムおよび方法 |
EP2535134B1 (de) | 2011-06-16 | 2018-01-24 | Klingelnberg AG | Verfahren zum Vorverzahnen mehrerer unterschiedlicher Kegelräder |
US10191546B2 (en) * | 2011-06-20 | 2019-01-29 | Immersion Corporation | Haptic theme framework |
CN102330123A (zh) | 2011-07-27 | 2012-01-25 | 太仓市金鹿电镀有限公司 | 一种连续镀金工艺 |
US20130031507A1 (en) | 2011-07-28 | 2013-01-31 | Moses George | Systems and methods for scrolling a document by providing visual feedback of a transition between portions of the document |
WO2013046502A1 (ja) | 2011-09-29 | 2013-04-04 | 日本電気株式会社 | 無線パラメータ制御装置、無線基地局、無線パラメータ制御方法、および非一時的なコンピュータ可読媒体 |
US9880640B2 (en) | 2011-10-06 | 2018-01-30 | Amazon Technologies, Inc. | Multi-dimensional interface |
GB2495486A (en) | 2011-10-07 | 2013-04-17 | Hiwave Technologies Uk Ltd | Contextual haptic feedback in response to touch input |
JP5899845B2 (ja) | 2011-11-15 | 2016-04-06 | セイコーエプソン株式会社 | 画像記録装置 |
CN102420906A (zh) | 2011-12-01 | 2012-04-18 | 华为终端有限公司 | 提示方法和用户终端 |
US9678570B2 (en) | 2011-12-15 | 2017-06-13 | Lg Electronics Inc. | Haptic transmission method and mobile terminal for same |
US9223472B2 (en) | 2011-12-22 | 2015-12-29 | Microsoft Technology Licensing, Llc | Closing applications |
KR101919617B1 (ko) | 2011-12-27 | 2018-11-16 | 엘지전자 주식회사 | 어포던스와 인터랙션이 강화된 사용자 인터페이스 |
US9032385B2 (en) | 2011-12-28 | 2015-05-12 | Lg Electronics Inc. | Mobile terminal and control method thereof |
US8812994B2 (en) | 2011-12-29 | 2014-08-19 | Apple Inc. | Device, method, and graphical user interface for configuring restricted interaction with a user interface |
US9092953B1 (en) | 2012-01-24 | 2015-07-28 | Bruce J. P. Mortimer | System and method for providing a remote haptic stimulus |
JP5590345B2 (ja) | 2012-02-01 | 2014-09-17 | シャープ株式会社 | 入出力装置、入出力方法、及び入出力プログラム |
US9411423B2 (en) | 2012-02-08 | 2016-08-09 | Immersion Corporation | Method and apparatus for haptic flex gesturing |
US8493354B1 (en) | 2012-08-23 | 2013-07-23 | Immersion Corporation | Interactivity model for shared feedback on mobile devices |
US9898119B2 (en) | 2012-02-20 | 2018-02-20 | Sony Mobile Communications Inc. | Touch screen interface with feedback |
US20130222224A1 (en) | 2012-02-24 | 2013-08-29 | Marcus Eriksson | Device, System and Method for Generating Display Data |
CN102622175B (zh) | 2012-02-24 | 2019-03-12 | 中兴通讯股份有限公司 | 一种在触摸屏设备上新建文件夹的方法及终端 |
US20130225300A1 (en) | 2012-02-28 | 2013-08-29 | Timothy J. Brinlee | Apparatus for personalized gaming environment |
US20130234929A1 (en) | 2012-03-07 | 2013-09-12 | Evernote Corporation | Adapting mobile user interface to unfavorable usage conditions |
US9247525B2 (en) | 2012-03-16 | 2016-01-26 | Qualcomm Incorporated | Systems and methods for providing notifications |
US9934713B2 (en) | 2012-03-28 | 2018-04-03 | Qualcomm Incorporated | Multifunction wristband |
US8881269B2 (en) | 2012-03-31 | 2014-11-04 | Apple Inc. | Device, method, and graphical user interface for integrating recognition of handwriting gestures with a screen reader |
US20150169059A1 (en) * | 2012-04-18 | 2015-06-18 | Nokia Corporation | Display apparatus with haptic feedback |
JP5987443B2 (ja) | 2012-04-19 | 2016-09-07 | 富士通株式会社 | 操作動作検出装置、操作動作検出方法、及びプログラム |
WO2013161163A1 (ja) | 2012-04-27 | 2013-10-31 | パナソニック株式会社 | 触感呈示装置、触感呈示方法、駆動信号生成装置および駆動信号生成方法 |
US20130290442A1 (en) | 2012-04-30 | 2013-10-31 | Emoze Ltd. | Downloaded attachments flow |
CN104487930A (zh) | 2012-05-09 | 2015-04-01 | 苹果公司 | 用于移动和放置用户界面对象的设备、方法和图形用户界面 |
CN106201316B (zh) | 2012-05-09 | 2020-09-29 | 苹果公司 | 用于选择用户界面对象的设备、方法和图形用户界面 |
WO2013169875A2 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for displaying content associated with a corresponding affordance |
EP3401773A1 (en) | 2012-05-09 | 2018-11-14 | Apple Inc. | Device, method, and graphical user interface for displaying additional information in response to a user contact |
DE112013002412T5 (de) * | 2012-05-09 | 2015-02-19 | Apple Inc. | Vorrichtung, Verfahren und grafische Benutzeroberfläche zum Bereitstellen von Rückmeldung für das Wechseln von Aktivierungszuständen eines Benutzerschnittstellenobjekts |
WO2013169842A2 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for selecting object within a group of objects |
WO2013169865A2 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for moving a user interface object based on an intensity of a press input |
WO2013169849A2 (en) | 2012-05-09 | 2013-11-14 | Industries Llc Yknots | Device, method, and graphical user interface for displaying user interface objects corresponding to an application |
WO2013169870A1 (en) | 2012-05-09 | 2013-11-14 | Yknots Industries Llc | Device, method, and graphical user interface for transitioning between display states in response to gesture |
EP2846703B1 (en) | 2012-05-10 | 2017-09-13 | Empire Technology Development LLC | Device for treating diverticular disease |
US20130300684A1 (en) | 2012-05-11 | 2013-11-14 | Samsung Electronics Co. Ltd. | Apparatus and method for executing multi applications |
US8570296B2 (en) | 2012-05-16 | 2013-10-29 | Immersion Corporation | System and method for display of multiple data channels on a single haptic display |
US9891709B2 (en) | 2012-05-16 | 2018-02-13 | Immersion Corporation | Systems and methods for content- and context specific haptic effects using predefined haptic effects |
EP2850510A2 (en) | 2012-05-18 | 2015-03-25 | Apple Inc. | Device, method, and graphical user interface for manipulating user interfaces based on fingerprint sensor inputs |
US20130318437A1 (en) | 2012-05-22 | 2013-11-28 | Samsung Electronics Co., Ltd. | Method for providing ui and portable apparatus applying the same |
US8948821B2 (en) | 2012-05-27 | 2015-02-03 | Qualcomm Incorporated | Notification based on user context |
US9348607B2 (en) | 2012-06-07 | 2016-05-24 | Apple Inc. | Quiet hours for notifications |
KR101305735B1 (ko) * | 2012-06-15 | 2013-09-06 | 성균관대학교산학협력단 | 촉각 효과의 제공 방법 및 장치 |
US8712383B1 (en) | 2012-06-21 | 2014-04-29 | Google Inc. | Tactile output device for computing device notifications |
US9641239B2 (en) | 2012-06-22 | 2017-05-02 | Fitbit, Inc. | Adaptive data transfer using bluetooth |
US8886576B1 (en) | 2012-06-22 | 2014-11-11 | Google Inc. | Automatic label suggestions for albums based on machine learning |
DE102012211163A1 (de) | 2012-06-28 | 2014-06-26 | Bayerische Motoren Werke Aktiengesellschaft | Verfahren zum Empfangen einer Eingabe auf einem berührungsempfindlichen Feld |
US20140007005A1 (en) | 2012-06-29 | 2014-01-02 | Evernote Corporation | Scrollable calendar with combined date and time controls |
US20140002376A1 (en) | 2012-06-29 | 2014-01-02 | Immersion Corporation | Method and apparatus for providing shortcut touch gestures with haptic feedback |
US9110562B1 (en) | 2012-07-26 | 2015-08-18 | Google Inc. | Snapping a pointing-indicator to a scene boundary of a video |
WO2014021602A2 (ko) | 2012-07-31 | 2014-02-06 | 인텔렉추얼디스커버리 주식회사 | 착용형 전자 장치 및 그의 제어 방법 |
US9256366B2 (en) | 2012-08-14 | 2016-02-09 | Google Technology Holdings LLC | Systems and methods for touch-based two-stage text input |
CN102843681A (zh) | 2012-08-15 | 2012-12-26 | 腾讯科技(深圳)有限公司 | 信息交互方法和装置 |
EP2703947B1 (de) | 2012-08-27 | 2019-02-27 | Siemens Aktiengesellschaft | Bedieneinrichtung für ein technisches System |
KR102008916B1 (ko) | 2012-09-07 | 2019-08-08 | 삼성전자주식회사 | 미확인 콘텐츠 표시 방법 및 그 전자 장치 |
US10042603B2 (en) | 2012-09-20 | 2018-08-07 | Samsung Electronics Co., Ltd. | Context aware service provision method and apparatus of user device |
CN104685444A (zh) * | 2012-09-25 | 2015-06-03 | 诺基亚技术有限公司 | 具有触觉反馈的方法和显示设备 |
US8743072B2 (en) | 2012-09-28 | 2014-06-03 | Lg Electronics Inc. | Display device and control method thereof |
WO2014049398A1 (en) | 2012-09-28 | 2014-04-03 | Nokia Corporation | Apparatus displaying animated image combined with tactile output |
US9178509B2 (en) * | 2012-09-28 | 2015-11-03 | Apple Inc. | Ultra low travel keyboard |
US9196134B2 (en) | 2012-10-31 | 2015-11-24 | Immersion Corporation | Method and apparatus for simulating surface features on a user interface with haptic effects |
CN103809884B (zh) | 2012-11-07 | 2019-02-05 | 联想(北京)有限公司 | 一种触控反馈方法、触控反馈屏及电子设备 |
US20150301697A1 (en) | 2012-11-20 | 2015-10-22 | Jolla Oy | A graphical user interface for a portable computing device |
US9836150B2 (en) | 2012-11-20 | 2017-12-05 | Immersion Corporation | System and method for feedforward and feedback with haptic effects |
JP6183661B2 (ja) | 2012-11-30 | 2017-08-23 | パナソニックIpマネジメント株式会社 | 触感呈示装置および触感呈示方法 |
CN103843842A (zh) | 2012-12-03 | 2014-06-11 | 青岛艾华隆生物科技有限公司 | 一种高效无毒农药及其制备方法 |
KR102091077B1 (ko) | 2012-12-14 | 2020-04-14 | 삼성전자주식회사 | 입력 유닛의 피드백을 제어하는 휴대 단말 및 방법과, 이를 제공하는 상기 입력 유닛 및 방법 |
JP6094198B2 (ja) | 2012-12-17 | 2017-03-15 | カシオ計算機株式会社 | 携帯型電子装置、通信システム、報知動作制御方法、及び、プログラム |
CN103869960B (zh) * | 2012-12-18 | 2018-02-23 | 富泰华工业(深圳)有限公司 | 触感反馈系统及其提供触感反馈的方法 |
US9223403B2 (en) | 2012-12-19 | 2015-12-29 | Panasonic Intellectual Property Management Co., Ltd. | Tactile input and output device |
US9202350B2 (en) | 2012-12-19 | 2015-12-01 | Nokia Technologies Oy | User interfaces and associated methods |
US9128523B2 (en) * | 2012-12-20 | 2015-09-08 | Amazon Technologies, Inc. | Dynamically generating haptic effects from audio data |
US9432323B2 (en) | 2012-12-21 | 2016-08-30 | Blackberry Limited | Method, system and apparatus for providing notifications for different workspaces |
US9213478B2 (en) * | 2012-12-21 | 2015-12-15 | Business Objects Software | Visualization interaction design for cross-platform utilization |
US9323327B2 (en) * | 2012-12-22 | 2016-04-26 | Intel Corporation | System and method for providing tactile feedback |
US9285880B2 (en) | 2012-12-26 | 2016-03-15 | Panasonic Intellectual Property Management Co., Ltd. | Touch panel device and method of controlling a touch panel device |
CN105144057B (zh) | 2012-12-29 | 2019-05-17 | 苹果公司 | 用于根据具有模拟三维特征的控制图标的外观变化来移动光标的设备、方法和图形用户界面 |
WO2014105275A1 (en) | 2012-12-29 | 2014-07-03 | Yknots Industries Llc | Device, method, and graphical user interface for forgoing generation of tactile output for a multi-contact gesture |
KR101727047B1 (ko) | 2012-12-31 | 2017-04-14 | 엘지전자 주식회사 | 진동 발생 장치 및 방법 |
US9417740B2 (en) | 2013-01-03 | 2016-08-16 | Nokia Technologies Oy | Capacitive sensing apparatus with a shield electrode |
KR20140090318A (ko) | 2013-01-07 | 2014-07-17 | 삼성전자주식회사 | 햅틱 기반 카메라 운용 지원 방법 및 이를 지원하는 단말기 |
US9704153B2 (en) * | 2013-01-14 | 2017-07-11 | Conduent Business Services, Llc | System and method for enabling transactions on an associated network |
US20140197963A1 (en) | 2013-01-15 | 2014-07-17 | Fitbit, Inc. | Portable monitoring devices and methods of operating the same |
US9699130B2 (en) | 2013-01-24 | 2017-07-04 | International Business Machines Corporation | User interface with recipient status indication |
US9088668B1 (en) | 2013-01-24 | 2015-07-21 | Amazon Technologies, Inc. | Configuring notification intensity level using device sensors |
KR20140095712A (ko) | 2013-01-25 | 2014-08-04 | 삼성전자주식회사 | 알림 제어 방법 및 그 전자 장치 |
KR102087005B1 (ko) | 2013-01-31 | 2020-03-11 | 삼성전자 주식회사 | 페이지 검색 방법 및 이를 지원하는 단말기 |
KR20140098384A (ko) | 2013-01-31 | 2014-08-08 | 삼성전자주식회사 | 복수의 터치스크린을 가지는 휴대 장치 및 복수의 터치스크린을 가지는 휴대 장치의 사운드 출력방법 |
US10775888B2 (en) | 2013-02-15 | 2020-09-15 | Facebook, Inc. | Method and system for integrating haptic feedback into portable electronic devices |
US20140232679A1 (en) | 2013-02-17 | 2014-08-21 | Microsoft Corporation | Systems and methods to protect against inadvertant actuation of virtual buttons on touch surfaces |
WO2014128021A1 (en) | 2013-02-19 | 2014-08-28 | Thomson Licensing | Method and apparatus for notifying missed events |
US10504339B2 (en) | 2013-02-21 | 2019-12-10 | Immersion Corporation | Mobile device with instinctive alerts |
KR102104910B1 (ko) | 2013-02-28 | 2020-04-27 | 삼성전자주식회사 | 입력 유닛에 촉각 피드백을 제공하는 휴대 장치 및 그 방법 |
US8754757B1 (en) | 2013-03-05 | 2014-06-17 | Immersion Corporation | Automatic fitting of haptic effects |
US10795528B2 (en) | 2013-03-06 | 2020-10-06 | Nuance Communications, Inc. | Task assistant having multiple visual displays |
US9854084B2 (en) | 2013-03-06 | 2017-12-26 | Google Llc | Contextual alarm and notification management |
US9189098B2 (en) * | 2013-03-14 | 2015-11-17 | Immersion Corporation | Systems and methods for syncing haptic feedback calls |
US9632986B2 (en) | 2013-03-14 | 2017-04-25 | Aol Inc. | Systems and methods for horizontally paginating HTML content |
US9436282B2 (en) * | 2013-03-14 | 2016-09-06 | Immersion Corporation | Contactor-based haptic feedback generation |
US9471200B2 (en) | 2013-03-15 | 2016-10-18 | Apple Inc. | Device, method, and graphical user interface for organizing and presenting a collection of media items |
EP2973278A4 (en) | 2013-03-15 | 2017-07-19 | First Data Corporation | Remote secure transactions |
US20140267076A1 (en) | 2013-03-15 | 2014-09-18 | Immersion Corporation | Systems and Methods for Parameter Modification of Haptic Effects |
KR101666393B1 (ko) | 2013-03-27 | 2016-10-14 | 한국전자통신연구원 | 음향효과를 이용한 촉각효과 재생 장치 및 방법 |
KR102115397B1 (ko) | 2013-04-01 | 2020-05-26 | 삼성전자주식회사 | 휴대 장치 및 휴대 장치의 재생목록 표시 방법 |
US20140292706A1 (en) | 2013-04-01 | 2014-10-02 | Lenovo (Singapore) Pte. Ltd. | Non-visual touch input targeting |
US20140292668A1 (en) * | 2013-04-01 | 2014-10-02 | Lenovo (Singapore) Pte. Ltd. | Touch input device haptic feedback |
US9507495B2 (en) | 2013-04-03 | 2016-11-29 | Blackberry Limited | Electronic device and method of displaying information in response to a gesture |
US9997032B2 (en) | 2013-04-09 | 2018-06-12 | Immersion Corporation | Offline haptic conversion system |
JP6131091B2 (ja) | 2013-04-22 | 2017-05-17 | シャープ株式会社 | 情報処理装置および制御プログラム |
US9075435B1 (en) | 2013-04-22 | 2015-07-07 | Amazon Technologies, Inc. | Context-aware notifications |
JP6297787B2 (ja) | 2013-04-25 | 2018-03-20 | 京セラ株式会社 | 携帯電子機器 |
US9939900B2 (en) | 2013-04-26 | 2018-04-10 | Immersion Corporation | System and method for a haptically-enabled deformable surface |
JP6335613B2 (ja) | 2013-04-26 | 2018-05-30 | イマージョン コーポレーションImmersion Corporation | 触覚使用可能な適合的及び多面的ディスプレイのためのシステム及び方法 |
US20140329567A1 (en) | 2013-05-01 | 2014-11-06 | Elwha Llc | Mobile device with automatic volume control |
US20140331162A1 (en) | 2013-05-06 | 2014-11-06 | Sap Ag | Quick time-related data entry |
US20140340316A1 (en) | 2013-05-14 | 2014-11-20 | Microsoft Corporation | Feedback for Gestures |
JP6157215B2 (ja) | 2013-05-23 | 2017-07-05 | キヤノン株式会社 | 表示制御装置及びその制御方法 |
US9274603B2 (en) * | 2013-05-24 | 2016-03-01 | Immersion Corporation | Method and apparatus to provide haptic feedback based on media content and one or more external parameters |
KR102161230B1 (ko) | 2013-05-28 | 2020-09-29 | 삼성전자주식회사 | 멀티미디어 콘텐츠 검색을 위한 사용자 인터페이스 방법 및 장치 |
US20140358709A1 (en) | 2013-05-31 | 2014-12-04 | Mastercard Asia Pacific Pte. Ltd. | Card Present Transaction Authentication by Short Messaging Service |
DE102013210522A1 (de) | 2013-06-06 | 2014-12-11 | Aktiebolaget Skf | Wälzlager |
JP6093659B2 (ja) | 2013-06-24 | 2017-03-08 | シャープ株式会社 | 情報処理装置、および情報処理プログラム |
US9804675B2 (en) | 2013-06-27 | 2017-10-31 | Elwha Llc | Tactile feedback generated by non-linear interaction of surface acoustic waves |
US9729730B2 (en) | 2013-07-02 | 2017-08-08 | Immersion Corporation | Systems and methods for perceptual normalization of haptic effects |
JP2015015600A (ja) | 2013-07-04 | 2015-01-22 | シャープ株式会社 | 携帯端末、制御方法 |
US10359857B2 (en) | 2013-07-18 | 2019-07-23 | Immersion Corporation | Usable hidden controls with haptic feedback |
US10037081B2 (en) * | 2013-08-12 | 2018-07-31 | Immersion Corporation | Systems and methods for haptic fiddling |
US9124720B2 (en) | 2013-08-19 | 2015-09-01 | Lisa Marie West | Driving cannot text noncontrolling cell phone app system and method |
US20150054727A1 (en) | 2013-08-23 | 2015-02-26 | Immersion Corporation | Haptically enabled viewing of sporting events |
US9652945B2 (en) | 2013-09-06 | 2017-05-16 | Immersion Corporation | Method and system for providing haptic effects based on information complementary to multimedia content |
US9401079B2 (en) | 2013-09-06 | 2016-07-26 | Immersion Corporation | Method and apparatus of converting control tracks for providing haptic feedback |
US9898085B2 (en) | 2013-09-06 | 2018-02-20 | Immersion Corporation | Haptic conversion system using segmenting and combining |
US9514620B2 (en) * | 2013-09-06 | 2016-12-06 | Immersion Corporation | Spatialized haptic feedback based on dynamically scaled values |
US9558637B2 (en) | 2013-09-10 | 2017-01-31 | Immersion Corporation | Systems and methods for performing haptic conversion |
JP6127853B2 (ja) | 2013-09-13 | 2017-05-17 | 富士通株式会社 | 情報処理装置、方法及びプログラム |
US20150078586A1 (en) | 2013-09-16 | 2015-03-19 | Amazon Technologies, Inc. | User input with fingerprint sensor |
US9892200B2 (en) | 2013-09-18 | 2018-02-13 | Ebay Inc. | Location-based and alter-ego queries |
US9553872B2 (en) | 2013-09-20 | 2017-01-24 | Verizon Patent And Licensing Inc. | Method and system for providing zero sign on user authentication |
US9213408B2 (en) | 2013-10-08 | 2015-12-15 | Immersion Corporation | Generating haptic effects while minimizing cascading |
US9430796B1 (en) | 2013-10-16 | 2016-08-30 | Google Inc. | Direct purchase from user-received advertisement |
GB2519558A (en) | 2013-10-24 | 2015-04-29 | Ibm | Touchscreen device with motion sensor |
CN104599121B (zh) | 2013-10-30 | 2017-04-12 | 腾讯科技(深圳)有限公司 | 一种信息传输方法、装置和系统 |
US9189932B2 (en) | 2013-11-06 | 2015-11-17 | Andrew Kerdemelidis | Haptic notification apparatus and method |
KR101504237B1 (ko) | 2013-11-15 | 2015-03-19 | 엘지전자 주식회사 | 이동 단말기 및 그 제어방법 |
US9639158B2 (en) * | 2013-11-26 | 2017-05-02 | Immersion Corporation | Systems and methods for generating friction and vibrotactile effects |
US9671826B2 (en) | 2013-11-27 | 2017-06-06 | Immersion Corporation | Method and apparatus of body-mediated digital content transfer and haptic feedback |
US9411422B1 (en) * | 2013-12-13 | 2016-08-09 | Audible, Inc. | User interaction with content markers |
GB2521225A (en) | 2013-12-16 | 2015-06-17 | Vicast Ltd | A method and apparatus for cataloguing data items |
KR102225031B1 (ko) | 2014-01-14 | 2021-03-09 | 엘지전자 주식회사 | 단말기 및 그 동작 방법 |
US9766852B2 (en) | 2014-01-15 | 2017-09-19 | Lenovo (Singapore) Pte. Ltd. | Non-audio notification of audible events |
WO2015116056A1 (en) * | 2014-01-29 | 2015-08-06 | Hewlett-Packard Development Company, L.P. | Force feedback |
US10726018B2 (en) | 2014-02-10 | 2020-07-28 | Microsoft Technology Licensing, Llc | Semantic matching and annotation of attributes |
EP2908236A1 (en) | 2014-02-13 | 2015-08-19 | Samsung Electronics Co., Ltd | Electronic device and index display method thereof |
KR102102647B1 (ko) | 2014-02-21 | 2020-04-21 | 엘지전자 주식회사 | 무선 리시버 및 그 제어 방법 |
WO2015126095A1 (ko) | 2014-02-21 | 2015-08-27 | 삼성전자 주식회사 | 전자 장치 |
JP2015166890A (ja) * | 2014-03-03 | 2015-09-24 | ソニー株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラム |
KR102335217B1 (ko) | 2014-03-05 | 2021-12-03 | 삼성전자 주식회사 | 전류 또는 전력 소모량을 이용한 애플리케이션 프로세서의 구동 방법 및 모바일 장치 |
US10417570B2 (en) | 2014-03-06 | 2019-09-17 | Verizon Patent And Licensing Inc. | Systems and methods for probabilistic semantic sensing in a sensory network |
JP2015170173A (ja) | 2014-03-07 | 2015-09-28 | ソニー株式会社 | 情報処理装置、情報処理システム、情報処理方法及びプログラム |
JP6381240B2 (ja) | 2014-03-14 | 2018-08-29 | キヤノン株式会社 | 電子機器、触感制御方法及びプログラム |
US9639231B2 (en) | 2014-03-17 | 2017-05-02 | Google Inc. | Adjusting information depth based on user's attention |
CN104932681B (zh) | 2014-03-21 | 2019-09-20 | 意美森公司 | 触觉效果的自动调整 |
WO2015143121A1 (en) | 2014-03-21 | 2015-09-24 | Immersion Corporation | System, method and computer-readable medium for force-based object manipulation and haptic sensations |
JP2015185137A (ja) * | 2014-03-26 | 2015-10-22 | ソニー株式会社 | 情報処理装置、情報処理方法、及びプログラム |
KR102243680B1 (ko) | 2014-04-07 | 2021-04-23 | 엘지전자 주식회사 | 투명 플렉서블 디스플레이 장치 및 그 장치의 제어 방법 |
US10162505B2 (en) | 2014-04-17 | 2018-12-25 | Blackberry Limited | System and method for enabling customized notifications on an electronic device |
JP6322830B2 (ja) | 2014-05-09 | 2018-05-16 | 任天堂株式会社 | 情報処理装置、情報処理プログラム、情報処理システム、および情報処理方法 |
CN105099688B (zh) | 2014-05-15 | 2018-12-21 | 阿里巴巴集团控股有限公司 | 一种电子账户的操作方法、支付页面的展示方法及装置 |
KR102204554B1 (ko) | 2014-05-27 | 2021-01-19 | 엘지전자 주식회사 | 이동 단말기 및 그것의 제어방법 |
US11343335B2 (en) | 2014-05-29 | 2022-05-24 | Apple Inc. | Message processing by subscriber app prior to message forwarding |
US9733880B2 (en) | 2014-05-30 | 2017-08-15 | Immersion Corporation | Haptic notification manager |
AU2015267671B2 (en) | 2014-05-30 | 2018-04-19 | Apple Inc. | Transition from use of one device to another |
US9898162B2 (en) | 2014-05-30 | 2018-02-20 | Apple Inc. | Swiping functions for messaging applications |
US9971500B2 (en) | 2014-06-01 | 2018-05-15 | Apple Inc. | Displaying options, assigning notification, ignoring messages, and simultaneous user interface displays in a messaging application |
US9588586B2 (en) | 2014-06-09 | 2017-03-07 | Immersion Corporation | Programmable haptic devices and methods for modifying haptic strength based on perspective and/or proximity |
US9648062B2 (en) | 2014-06-12 | 2017-05-09 | Apple Inc. | Systems and methods for multitasking on an electronic device with a touch-sensitive display |
US20140320402A1 (en) | 2014-07-14 | 2014-10-30 | Immersion Corporation | Self calibration for haptic devices |
US9710063B2 (en) | 2014-07-21 | 2017-07-18 | Immersion Corporation | Systems and methods for determining haptic effects for multi-touch input |
WO2016017978A1 (en) | 2014-07-31 | 2016-02-04 | Samsung Electronics Co., Ltd. | Device and method for performing functions |
KR102156223B1 (ko) | 2014-08-02 | 2020-09-15 | 애플 인크. | 상황 특정 사용자 인터페이스 |
US20160036996A1 (en) | 2014-08-02 | 2016-02-04 | Sony Corporation | Electronic device with static electric field sensor and related method |
WO2016032806A1 (en) | 2014-08-26 | 2016-03-03 | Apple Inc. | User interface for limiting notifications and alerts |
US9659482B2 (en) | 2014-09-02 | 2017-05-23 | Apple Inc. | Context-based alerts for an electronic device |
KR102019505B1 (ko) | 2014-09-02 | 2019-09-06 | 애플 인크. | 햅틱 통지 |
KR102096146B1 (ko) | 2014-09-02 | 2020-04-28 | 애플 인크. | 가변 햅틱 출력을 위한 시맨틱 프레임워크 |
TWI676127B (zh) | 2014-09-02 | 2019-11-01 | 美商蘋果公司 | 關於電子郵件使用者介面之方法、系統、電子器件及電腦可讀儲存媒體 |
US10048835B2 (en) | 2014-10-31 | 2018-08-14 | Microsoft Technology Licensing, Llc | User interface functionality for facilitating interaction between users and their environments |
GB2532766A (en) | 2014-11-27 | 2016-06-01 | Ibm | Interaction with a graph for device control |
KR101666532B1 (ko) * | 2014-12-01 | 2016-10-14 | 김정훈 | 실시간 진동 피드백을 제공하는 진동 마우스 |
US10764424B2 (en) | 2014-12-05 | 2020-09-01 | Microsoft Technology Licensing, Llc | Intelligent digital assistant alarm system for application collaboration with notification presentation |
KR102230523B1 (ko) | 2014-12-08 | 2021-03-19 | 신상현 | 이동 단말기 |
CN104536643B (zh) | 2014-12-10 | 2018-05-29 | 广东欧珀移动通信有限公司 | 一种图标拖动方法及终端 |
GB2533572A (en) | 2014-12-22 | 2016-06-29 | Nokia Technologies Oy | Haptic output methods and devices |
US9665960B1 (en) | 2014-12-22 | 2017-05-30 | Amazon Technologies, Inc. | Image-based item location identification |
US9466188B2 (en) | 2014-12-24 | 2016-10-11 | Immersion Corporation | Systems and methods for haptically-enabled alarms |
US9851805B2 (en) | 2014-12-24 | 2017-12-26 | Immersion Corporation | Systems and methods for haptically-enabled holders |
DE102015200036A1 (de) * | 2015-01-05 | 2016-07-07 | Volkswagen Aktiengesellschaft | Verfahren und Vorrichtung in einem Kraftfahrzeug zur Eingabe von Daten mit zwei Eingabearten und haptischer Rückkopplung |
US9794402B2 (en) | 2015-01-12 | 2017-10-17 | Apple Inc. | Updating device behavior based on user behavior |
US9619034B2 (en) * | 2015-02-25 | 2017-04-11 | Immersion Corporation | Overlaying of haptic effects |
US9600094B2 (en) * | 2015-03-04 | 2017-03-21 | Lenovo (Singapore) Pte. Ltd. | Apparatus, method, and program product for directing motion of a writing device |
US10055121B2 (en) | 2015-03-07 | 2018-08-21 | Apple Inc. | Activity based thresholds and feedbacks |
US9542037B2 (en) * | 2015-03-08 | 2017-01-10 | Apple Inc. | Device, method, and user interface for processing intensity of touch contacts |
US9632664B2 (en) | 2015-03-08 | 2017-04-25 | Apple Inc. | Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback |
US9788138B2 (en) | 2015-04-03 | 2017-10-10 | Snaptrack, Inc. | Methods and systems of allocating application functions to motion-correlated devices |
US10466861B2 (en) | 2015-04-21 | 2019-11-05 | Apple Inc. | Adaptive user interfaces |
WO2016171848A1 (en) | 2015-04-23 | 2016-10-27 | Thomson Licensing | Vibration signatures for intelligent alerts |
CN105095705B (zh) * | 2015-05-19 | 2018-04-10 | 努比亚技术有限公司 | 一种信息处理方法及装置 |
KR102307303B1 (ko) | 2015-05-20 | 2021-09-30 | 엘지전자 주식회사 | 이동단말기 및 그 제어방법 |
US9844984B2 (en) | 2015-05-22 | 2017-12-19 | General Motors Llc | Vehicle tire gauge systems |
KR102423184B1 (ko) | 2015-05-29 | 2022-07-21 | 삼성전자주식회사 | 화면 출력 방법 및 이를 지원하는 전자 장치 |
US20160357354A1 (en) | 2015-06-04 | 2016-12-08 | Apple Inc. | Condition-based activation of a user interface |
US9529500B1 (en) | 2015-06-05 | 2016-12-27 | Apple Inc. | Application recommendation based on detected triggering events |
US9891811B2 (en) | 2015-06-07 | 2018-02-13 | Apple Inc. | Devices and methods for navigating between user interfaces |
US10275116B2 (en) | 2015-06-07 | 2019-04-30 | Apple Inc. | Browser with docked tabs |
US9658704B2 (en) | 2015-06-10 | 2017-05-23 | Apple Inc. | Devices and methods for manipulating user interfaces with a stylus |
US10055048B2 (en) | 2015-07-31 | 2018-08-21 | Apple Inc. | Noise adaptive force touch |
US9880735B2 (en) | 2015-08-10 | 2018-01-30 | Apple Inc. | Devices, methods, and graphical user interfaces for manipulating user interface objects with visual and/or haptic feedback |
US10034129B1 (en) | 2015-08-24 | 2018-07-24 | Groupon, Inc. | Mobile proximity based messages |
US9928029B2 (en) | 2015-09-08 | 2018-03-27 | Apple Inc. | Device, method, and graphical user interface for providing audiovisual feedback |
UA118951U (uk) | 2015-09-17 | 2017-09-11 | Микола Сергійович Лещенко | Спосіб представлення контенту користувачу |
EP3320415A4 (en) | 2015-09-22 | 2019-03-06 | Immersion Corporation | HAPTICITY BASED ON PRESSURE |
KR101708319B1 (ko) | 2015-10-12 | 2017-02-20 | 엘지전자 주식회사 | 와치 타입 단말기 |
US20170185729A1 (en) | 2015-11-18 | 2017-06-29 | Srinidhi Boray | Methods and systems of a hyperbolic-dirac-net-based bioingine platform and ensemble of applications |
KR102521214B1 (ko) | 2016-01-19 | 2023-04-13 | 삼성전자주식회사 | 사용자 인터페이스를 표시하는 방법 및 이를 지원하는 전자 장치 |
DK179823B1 (en) | 2016-06-12 | 2019-07-12 | Apple Inc. | DEVICES, METHODS, AND GRAPHICAL USER INTERFACES FOR PROVIDING HAPTIC FEEDBACK |
DK201670737A1 (en) | 2016-06-12 | 2018-01-22 | Apple Inc | Devices, Methods, and Graphical User Interfaces for Providing Haptic Feedback |
DK179278B1 (en) | 2016-09-06 | 2018-03-26 | Apple Inc | Devices, methods and graphical user interfaces for haptic mixing |
DK201670720A1 (en) | 2016-09-06 | 2018-03-26 | Apple Inc | Devices, Methods, and Graphical User Interfaces for Generating Tactile Outputs |
US11036387B2 (en) | 2017-05-16 | 2021-06-15 | Apple Inc. | Devices, methods, and graphical user interfaces for navigating between user interfaces and interacting with control objects |
DK201770372A1 (en) | 2017-05-16 | 2019-01-08 | Apple Inc. | TACTILE FEEDBACK FOR LOCKED DEVICE USER INTERFACES |
US10365719B2 (en) | 2017-07-26 | 2019-07-30 | Google Llc | Haptic feedback of user interface scrolling with synchronized visual animation components |
DK179888B1 (en) | 2018-09-11 | 2019-08-27 | Apple Inc. | CONTENT-BASED TACTICAL OUTPUTS |
US10645294B1 (en) | 2019-05-06 | 2020-05-05 | Apple Inc. | User interfaces for capturing and managing visual media |
-
2016
- 2016-09-16 DK DKPA201670720A patent/DK201670720A1/en not_active Application Discontinuation
- 2016-09-20 US US15/271,073 patent/US9753541B1/en active Active
- 2016-09-21 US US15/271,708 patent/US9678571B1/en active Active
- 2016-09-21 US US15/271,653 patent/US9690383B1/en active Active
-
2017
- 2017-08-11 AU AU2017213578A patent/AU2017213578B1/en active Active
- 2017-08-14 EP EP17186196.6A patent/EP3291056B1/en active Active
- 2017-08-14 EP EP17186312.9A patent/EP3291057B1/en active Active
- 2017-08-14 EP EP24150093.3A patent/EP4328733A3/en active Pending
- 2017-08-14 EP EP22167427.8A patent/EP4047455B1/en active Active
- 2017-08-14 EP EP17186313.7A patent/EP3293612B1/en active Active
- 2017-08-15 AU AU2017216471A patent/AU2017216471B1/en active Active
- 2017-08-15 AU AU2017216453A patent/AU2017216453B1/en active Active
- 2017-08-23 CN CN201911023034.1A patent/CN110764617B/zh active Active
- 2017-08-23 CN CN201710728497.2A patent/CN107797655B/zh active Active
- 2017-08-23 CN CN201911032592.4A patent/CN110794967B/zh active Active
- 2017-08-24 CN CN201710736331.5A patent/CN107870690B/zh active Active
- 2017-08-24 CN CN201710735308.4A patent/CN107797657B/zh active Active
- 2017-08-28 US US15/688,754 patent/US10175762B2/en active Active
- 2017-11-14 AU AU2017261484A patent/AU2017261484B2/en active Active
-
2019
- 2019-01-04 US US16/240,684 patent/US10372221B2/en active Active
- 2019-04-08 AU AU2019202429A patent/AU2019202429B2/en active Active
- 2019-07-10 US US16/508,218 patent/US10620708B2/en active Active
-
2020
- 2020-04-10 US US16/846,124 patent/US10901514B2/en active Active
- 2020-12-23 AU AU2020294270A patent/AU2020294270B2/en active Active
- 2020-12-30 US US17/138,664 patent/US11221679B2/en active Active
-
2022
- 2022-01-10 US US17/572,535 patent/US11662824B2/en active Active
- 2022-07-11 AU AU2022205027A patent/AU2022205027B2/en active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20110279381A1 (en) * | 2010-05-14 | 2011-11-17 | Research In Motion Limited | Method of providing tactile feedback and electronic device |
CN104412201A (zh) * | 2012-05-09 | 2015-03-11 | 苹果公司 | 基于跟踪窗口来改变计算设备的输出 |
CN104508618A (zh) * | 2012-05-09 | 2015-04-08 | 苹果公司 | 用于针对在用户界面中执行的操作提供触觉反馈的设备、方法和图形用户界面 |
US20150227204A1 (en) * | 2014-02-13 | 2015-08-13 | Mide Technology Corporation | Bussed haptic actuator system and method |
US20150293592A1 (en) * | 2014-04-15 | 2015-10-15 | Samsung Electronics Co., Ltd. | Haptic information management method and electronic device supporting the same |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11829576B2 (en) | 2013-09-03 | 2023-11-28 | Apple Inc. | User interface object manipulations in a user interface |
US11941191B2 (en) | 2014-09-02 | 2024-03-26 | Apple Inc. | Button functionality |
US12001650B2 (en) | 2014-09-02 | 2024-06-04 | Apple Inc. | Music user interface |
CN109144520A (zh) * | 2018-09-03 | 2019-01-04 | 武汉斗鱼网络科技有限公司 | Android中不同对象间的信息交互方法、装置、设备和存储介质 |
CN109144520B (zh) * | 2018-09-03 | 2022-05-13 | 武汉斗鱼网络科技有限公司 | Android中不同对象间的信息交互方法、装置、设备和存储介质 |
CN115826750A (zh) * | 2018-09-11 | 2023-03-21 | 苹果公司 | 基于内容的触觉输出 |
US11921926B2 (en) | 2018-09-11 | 2024-03-05 | Apple Inc. | Content-based tactile outputs |
US12050766B2 (en) | 2019-12-04 | 2024-07-30 | Apple Inc. | Crown input for a wearable electronic device |
CN113253848A (zh) * | 2021-06-10 | 2021-08-13 | 武汉市聚芯微电子有限责任公司 | 用于控制触觉反馈的方法、装置和包括该装置的电子设备 |
CN113296638A (zh) * | 2021-06-10 | 2021-08-24 | 武汉市聚芯微电子有限责任公司 | 用于控制触觉反馈的方法、装置和包括该装置的电子设备 |
Also Published As
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107797655B (zh) | 用于生成触觉输出的设备、方法和图形用户界面 | |
CN104903835B (zh) | 用于针对多接触手势而放弃生成触觉输出的设备、方法和图形用户界面 | |
CN108351750B (zh) | 用于处理与触摸输入相关联的强度信息的设备、方法、以及图形用户界面 | |
CN104471521B (zh) | 用于针对改变用户界面对象的激活状态来提供反馈的设备、方法和图形用户界面 | |
CN105264479B (zh) | 用于对用户界面分级结构进行导航的设备、方法和图形用户界面 | |
EP3469470B1 (en) | Accelerated scrolling | |
CN205176822U (zh) | 电子设备 | |
CN104487928B (zh) | 用于响应于手势而在显示状态之间进行过渡的设备、方法和图形用户界面 | |
CN104487927B (zh) | 用于选择用户界面对象的设备、方法和图形用户界面 | |
CN104508618B (zh) | 用于针对在用户界面中执行的操作提供触觉反馈的设备、方法和图形用户界面 | |
CN109154859A (zh) | 用于提供触觉反馈的设备、方法和图形用户界面 | |
CN110275664A (zh) | 用于提供视听反馈的设备、方法和图形用户界面 | |
CN108196761A (zh) | 利用磁属性来操控用户界面对象的用户界面 | |
CN108369455A (zh) | 用于提供触觉反馈的设备、方法和图形用户界面 | |
CN107391008A (zh) | 用于在用户界面之间导航的设备和方法 | |
CN105388966A (zh) | 电子触摸通信 | |
CN107710135A (zh) | 使用可旋转输入机构的用户界面 | |
CN106797493A (zh) | 音乐用户界面 | |
CN107683458A (zh) | 用于操纵相关应用程序窗口的设备、方法和图形用户界面 | |
CN107683470A (zh) | 用于web浏览器的音频控制 | |
CN108700949A (zh) | 针对丧失视力用户的基于腕部的触觉时间反馈 | |
CN107797656A (zh) | 用于触觉混合的设备、方法和图形用户界面 | |
CN110109730A (zh) | 用于提供视听反馈的设备、方法和图形用户界面 | |
CN110457093A (zh) | 用于主动管理通知的设备、方法和图形用户界面 | |
CN110096157A (zh) | 基于内容的触觉输出 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |