使用输入运动来导航列表转让专利

申请号 : CN200880022529.6

文献号 : CN101689082B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : A·O·A·安德鲁斯M·维纳布尔C·利希藤斯坦

申请人 : 微软公司

摘要 :

公开了在具有触敏输入设备的计算设备上的显示器上导航项目的方法。类似于自行车车轮,项目列表会与所施加的输入的速度相关地旋转,包括加速、减速、停止、和改变方向。

权利要求 :

1.一种在具有触敏输入设备(116)的计算设备上的显示器上导航项目的方法,包括:在所述输入设备上的第一位置处接受输入(300);

在所述第一位置的周围创建死区(310);

在所述输入的周围建立刻度线网格,其中所述刻度线网格包括垂直刻度线(620)和水平刻度线(610);

如果所述输入移动到所述死区(420)之外,则存储所述输入离开所述死区(420)处的坐标位置,包括垂直和水平位置(320);

通过使用从先前刻度线交叉点的坐标位置到当前刻度线交叉点的坐标位置的方向来确定输入方向(330);

如果所述输入移动多个刻度距离(630),其中所述刻度距离的数量大于零,则在所述输入方向上以所述刻度距离(630)的数目来旋转项目的显示(340);

如果所述输入从所述输入设备移开,则

使用所述输入在采样时间的位置和在所述采样时间期间所述输入所行进的距离来确定所述输入移动的速度(360);

如果所述速度高于阈值,则在所述显示器上显示所述项目,其中所述项目在所述输入方向上以逐渐降低的初始速度在所述显示器上旋转经过并且其中所述初始速度与所述输入移动的速度相关(370)。

2.如权利要求1所述的方法,其特征在于,如果项目数高于项目限制,则旋转所述项目的速度较快,而如果项目数低于所述项目限制,则所述速度较慢(360)。

3.如权利要求2所述的方法,其特征在于,还包括使用所述输入穿过多个刻度线的多个时间以及所述输入所行进的距离来确定所述输入移动的速度(360)。

4.如权利要求1所述的方法,其特征在于,还包括:如果所述输入从所述输入设备移开并且所述速度高于所述阈值(360),则接收后续输入;

在所述后续输入周围创建新死区(420);

如果没有移出所述新死区并且所述后续输入在保持时间段之前停止;

则降低所述项目在所述显示器上旋转的速度(360)。

5.如权利要求4所述的方法,其特征在于,还包括如果所述后续输入延长超过所述保持时间段,则进一步降低所述项目在所述显示器上旋转的速度(360)。

6.如权利要求4所述的方法,其特征在于,还包括如果所述后续输入在所述保持时间段期满之前出了所述新死区(530)以及如果所述后续输入是刻度长度(630),则以对每个经过的刻度长度的因子来旋转所述项目的显示。

7.如权利要求6所述的方法,其特征在于,还包括如果所述后续输入(520)从所述输入设备(116)移开并且如果所述后续输入的速度高于所述阈值,以及如果所述后续输入在当前项目旋转的方向上,则增加所述旋转的速度(360)以及

如果所述后续输入在与所述当前项目旋转相反的方向上,则在所述后续输入的方向上以与所述后续输入的速度和所述项目在所述后续输入之前移动的速度相关的速度旋转所述项目。

8.如权利要求1所述的方法,其特征在于,如果所述速度落在一阈值以下,则所述旋转会停止。

9.一种用于在具有触敏输入设备的计算设备上的显示器上导航项目的方法,所述方法包括:在所述输入设备上的第一位置处接受输入(300);

在所述第一位置的周围创建死区(310);

确定输入方向(330);

如果所述输入移动多个刻度距离(630),其中所述刻度距离的数目大于零,则在所述输入方向上以所述刻度距离的数目来旋转所述项目的显示(340);

如果所述输入从所述输入设备移开,则

确定所述输入的速度(360);

如果所述输入的速度高于阈值,则在所述显示器上显示所述项目,其中所述项目在所述输入方向上以逐渐降低的初始速度在所述显示器旋转经过并且其中所述初始速度与所述输入移动的速度相关(370)。

10.如权利要求9所述的方法,其特征在于,还包括通过使用从先前刻度线(610、620)交叉点的坐标位置到当前刻度线(610、620)交叉点的坐标位置的方向来确定输入方向。

11.如权利要求9所述的方法,其特征在于,还包括确定如果所述输入从所述设备移开并且所述输入的速度高于所述阈值则执行如下动作,接收后续输入;

在所述后续输入(520)周围创建新死区(530);

确定是否没有移出所述新死区(530)以及所述后续输入是否在保持时间段之前停止,并且如果所述判定为真,则;

降低所述项目在所述显示器上的旋转速度。

12.如权利要求11所述的方法,其特征在于,还包括如果所述后续输入延长超过所述保持时间段,则进一步降低所述项目在所述显示器上的旋转速度。

13.如权利要求11所述的方法,其特征在于,还包括确定在所述保持时间段期满之前在所述新死区(530)之外是否有输入以及确定所述输入是否是刻度长度(630),以及如果所述判定为真,则以对每个经过的刻度长度的因子旋转所述项目的显示。

14.如权利要求11所述的方法,其特征在于,还包括确定:如果所述输入从所述输入设备(116)移开以及如果所述后续输入的速度高于所述阈值,以及

如果所述后续输入在当前项目旋转的方向上,则增加所述旋转的速度;以及

确定所述后续输入是否在所述当前项目旋转相反的方向上以及如果所述判定为真,则在所述后续输入的方向上以与所述后续输入的速度和所述项目在所述后续输入之前移动的速度相关的速度旋转所述项目。

15.一种在具有触敏输入设备(116)的计算设备上的显示器上导航项目的方法,包括:在所述输入设备上的第一位置处接受输入(300);

在所述第一位置的周围创建死区(310);

确定输入方向(330);

如果所述输入移动多个刻度距离(630),其中所述刻度距离的数目大于零,则在所述输入方向上以所述刻度距离的数目来旋转所述项目的显示(340);

如果所述输入从所述输入设备移开,则

使用所述输入在采样时间的位置和在采样时间期间所述输入所行进的距离来确定所述输入移动的速度(360);

如果所述速度高于阈值,则在所述显示器上显示所述项目,其中所述项目在所述输入方向上以逐渐降低的初始速度在所述显示器上旋转经过并且其中所述初始速度是与所述输入移动的速度相关(370)。

接收后续输入;

在所述后续输入周围创建新死区(530);

如果没有移出新死区(530)并且所述后续输入在保持时间段之前停止,则;

降低所述项目在所述显示器上旋转的速度;

如果所述后续输入延长超过所述保持时间段,则进一步降低所述项目的旋转速度;

如果所述后续输入在所述保持时间段期满之前出了所述新死区(530)以及如果所述后续输入是刻度长度(630),则在所述后续输入的方向上以对每个经过的刻度长度的因子来旋转所述项目的显示;

如果所述后续输入在所述当前项目旋转的方向上,并且如果所述后续输入离开所述后续输入并且如果所述后续输入的速度高于所述阈值,则增加所述旋转的速度以及

如果所述后续输入在所述当前项目旋转相反的方向上,并且如果所述后续输入离开所述输入并且如果所述后续输入的速度高于所述阈值,则在所述后续输入的方向上以与所述后续输入的速度和所述项目在所述后续输入之前移动的速度相关的速度旋转所述项目。

16.如权利要求15所述的方法,其特征在于,如果项目数高于项目限制,则旋转所述项目的速度较快,而如果项目数低于所述项目限制,则所述速度较慢。

17.如权利要求15所述的方法,其特征在于,如果所述速度落在阈值以下,则所述旋转会停止。

18.如权利要求15所述的方法,其特征在于,所述设备是从包括蜂窝电话、媒体播放器、和游戏设备的组中选出的。

说明书 :

使用输入运动来导航列表

[0001] 技术领域
[0002] 本发明涉及导航项目,尤其涉及使用输入运动来导航列表。
[0003] 背景技术
[0004] 随着数据压缩的发展,用户能够在便携式设备中携带越来越多的数据。此外,数据可以是各种形式的。然而,便携式设备是小型的,包括具有小型输入设备。试图通过长数据列表来操纵对用户而言变得越来越难和令人沮丧。
[0005] 发明内容
[0006] 公开了在具有触敏输入设备的计算设备上的显示器上导航项目的方法。可以在输入设备上的第一位置处接受输入,并且可以在该第一位置周围创建死区(deadzone)。如果输入移动到死区之外,则可以存储输入离开该死区的位置。可以使用从第一位置到当前位置的方向来确定输入方向。如果输入移动多个刻度(tick)距离,其中刻度距离的数量大于0,则可以在输入方向上以刻度距离的数量的因子来旋转项目的显示。如果输入从设备上移开,并且输入移动的速度大于阈值,则可以按项目在输入方向上以逐渐降低的初始速度在显示器上旋转经过并且初始速度与输入移动的速度相关的方式显示显示器上的项目。类似于自行车车轮,项目列表会与所施加的输入速度相关地旋转,包括加速、减速、停止、和改变方向。
[0007] 附图说明
[0008] 图1是便携式媒体设备的体系结构的图示;
[0009] 图2a、2b和2c是显示项目的便携式计算设备的图示,其中项目响应于用户输入而移动;
[0010] 图3是使用输入运动来导航列表的方法的流程图;
[0011] 图4是输入设备的图示;
[0012] 图5是将输入移动到输入设备的图示;以及
[0013] 图6是输入设备上的刻度线的图示。
[0014] 具体实施方式
[0015] 尽管下文阐明许多不同实施例的详细描述,但是应该理解,该描述的法律范围由本发明所附的权利要求书的言辞来限定。该详细描述应被解释为仅是示例性的,且不描述每一可能的实施例,因为描述每一可能的实施例即使不是不可能的也是不现实的。可使用现有技术或在本申请提交日之后开发的技术来实现许多替换实施例,而这仍然落入权利要求书的范围之内。
[0016] 还应该理解,在本专利中,除非使用句子“如此处所用,术语‘_____’特此被定义为意指……”或者类似句子来明确地定义一个术语,否则不管是明确地还是含蓄地,都没有限制该术语意义超出其平常或普通意义的意图,并且,这一术语不应该被解释为被限制在基于本专利的任何部分中(除了权利要求书的语言之外)所做的任何陈述的范围中。就本专利所附的权利要求书中所陈述的任何术语在本专利中以与单数意义相一致的方式来引用而言,这是为简明起见而如此做的,仅仅是为了不使读者感到混淆,且这样的权利要求术语并不旨在隐含地或以其他方式限于该单数意义。最后,除非一个权利要求要素是通过叙述词语“装置”和功能而没有叙述任何结构来定义的,否则任何权利要求要素的范围并不旨在基于35U.S.C.§112第6段的应用来解释。
[0017] 许多发明性功能和许多发明性原理最佳地使用或利用软件程序或指令以及诸如专用IC等集成电路(IC)来实现。期望本领域的普通技术人员尽管可能要进行大量的工作和由例如可用时间、现有技术以及经济问题促动的许多设计选择,但是当受到此处所公开的的概念和原理的指导时,能够容易地以最少的实验生成这些软件指令和程序以及IC。因此,为了简明以及最小化根据本发明的原理和概念晦涩的任何风险,对于这些软件和IC(如果有)的进一步讨论将被限于对于优选实施例的原理和概念所必需的那些讨论。 [0018] 图1是可用于媒体设备100的示例性硬件的图示。媒体设备100可以具有处理单元102、存储器104、用户界面106、存储设备108和电源127。存储器104可以包括易失性存储器110(诸如RAM)、非易失性存储器112(诸如ROM、闪存等)、或这两种的某种组合、或任何其他形式的存储设备。应用程序可以作为非易失性存储器的一部分来存储,包括通信应用程序130、附近设备跟踪管理应用程序135和附近设备用户界面应用程序140。 [0019] 媒体设备100还可以包括附加存储108(可移动和/或不可移动),包括但不限于磁盘或光盘或磁带或任何其他存储器。这种附加存储在图1中由可移动存储118和不可移动存储120来示出。计算机存储介质包括以用于存储诸如计 算机可读指令、数据结构、程序模块、数字媒体或其他数据等信息的任何方法或技术实现的易失性的和非易失性的、可移动的和不可移动的介质。
[0020] 处理单元102可以是能够足够快地执行计算机代码以便将媒体数据从压缩格式解码成可使用的形式,以使得音乐和视频可以在没有漏帧或跳帧的情况下连续播放的任何处理单元102。当在便携式媒体设备中,如果处理器102高效地使用电量以增加电源的寿命则也会是有用的。处理单元102还可以被用于执行支持用户界面和外部通信的代码。 [0021] 用户界面106可以包括用于显示控制信息和显示可查看媒体两者的一个或多个显示器114。显示器114可以是装配在设备100内的彩色LCD屏幕。显示器114可以显示项目115(图2a、2b和2c),其中项目可以是歌曲、视频、菜单选项、游戏、电话号码、联系人等。用户输入116可以包括手动按钮、软按钮、或这两者的组合。此外,用户输入可以是无需使用按钮的手势驱动的,或者可以是语音激活的。软按钮可以在显示器114包括触摸屏能力时使用。手动按钮可以包括具有可编程图例的可重新定义的键。
[0022] 媒体设备100还可以包含允许设备100与诸如用于同步的网络端点或计算机等外部实体124通信的通信连接125。处理器102还可以与安全模块122通信。安全模块122的一部分可以是时钟123。安全模块122有助于确保仅与经批准的外部实体124发生通信。 [0023] 通信连接122是通信介质的示例。通信介质通常以诸如载波或其它传输机制等已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,且包含任何信息传递介质。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被设定或更改的信号。作为示例而非限制,通信介质包括有线介质,诸如有线网络或直接线连接,以及无线介质,诸如声学、RF、红外线和其它无线介质。此处所使用的术语计算机可读介质包括存储介质和通信介质两者。
[0024] 电源127可以是可再充电的电池。电源127也可以是标准电池或来自电源转换器或任何其他电力源的输入。
[0025] 图3示出了使用触敏用户输入116在计算设备100上的显示器上导航项目的方法。计算设备100可以是任何计算设备。在一个实施例中,计算设备100是便携式计算设备,诸如便携式媒体播放器。触敏输入设备116可以是任何现代的触摸式输入设备116,诸如电容性表面设备。触敏输入设备116可以被安 装在计算设备上或可以是OLED设备的一部分并且可以是便携式计算设备上的显示器。显示器可以是任何适当的显示设备114。显示设备114可以显示用于在计算设备上操作各种选项的菜单。显示设备114还可以显示存储在设备上的项目115(图2a、2b、2c),诸如歌曲、照片、文档、书、视频、电子邮件、电话号码、电子邮件地址等。
[0026] 在框300处,输入设备116可以在输入设备116上的第一位置410处接受输入405。输入405可以是手指的触摸或者来自指示笔或在触摸输入设备116上创建输入405的任何其他方式。在框310处,可以在当前位置410周围创建死区420。死区420是当前位置410周围的区域。在一个实施例中,该区域的大小使得输入设备116上的无意移动不被认为离开死区420。死区420允许用户使小型输入405移动而不会无意地激活不合需要的动作。
在一个实施例中,死区420的大小是当前位置410周围的区域的50%。当然,其他死区420大小是可能的。此外,可以由用户或设备上的应用程序来调整死区420的大小。 [0027] 在框320处,如果输入405移动到死区420之外,则将输入405离开死区的位置存储在存储器111中。图5可以示出其中用户将手指(作为输入405)移动到死区420之外并且手指在位置500处离开死区420的示例。当然,取决于输入设备116的灵敏度,多个周围位置可以是输入405在该处离开死区420的可能位置500。在一个实施例中,可以对位置
500求平均以找出中心,或者在另一实施例中,可以使用在死区420外接收到的第一输入位置500。当然,其他实施例是可能的。
[0028] 在框330处,可以通过使用从先前位置410到当前位置520的方向来确定输入方向。例如,当前位置520可以是第一位置,而先前位置410可以是输入离开死区500的位置。可以创建连接当前位置520和先前位置410的矢量。该矢量可用于确定用户是否期望向上移动通过项目列表、向下移动通过项目列表、或当允许各种方向时实际上在任何方向上穿过项目列表。例如,在其中移动或者向上或者向下通过列表的二维列表中,主要是从左向右但是也有一点向上(诸如在图5中)的穿过输入设备116的运动会被解释为期望向上移动通过列表。简要地参考图6,可以创建水平刻度线610和垂直刻度线620,并且可以通过比较先前刻度线交叉点和当前刻度线交叉点的位置来确定方向。
[0029] 在框340处,如果输入405移动至少一个数量的刻度距离,则可以在来自框330的输入方向上以刻度距离的数量的因子来旋转显示器上的项目显示。在 某些实施例中,该因子是1,而其他因子是可能的。参考图6,在一个实施例中,刻度线网格600,水平610和垂直620在第一输入点410周围。刻度距离630可以是两条水平刻度线610之间的距离或两条垂直刻度线620之间的距离。当然,该网格可以是不同的角度,并且线600无需完全垂直或水平。在一个实施例中,线600是围绕输入405的环。此外,刻度距离630可以是任何距离。
可以由程序员为在设备100上运作的每个应用程序设置距离。此外,该距离可以是用户可修改的。此外,刻度距离可以与第一位置410处的输入405的大小有关。例如,如果用户具有巨大的手指而导致巨大的输入405,则刻度距离会比在输入405的大小是小型的情况下更大。当然,可以用相同的方式设置刻度线之间的距离。在另一实施例中,刻度距离630对于所有的应用程序和所有的用户而言是常数,这样使得用户发展出对在计算设备100上执行期望动作所需的移动大小的感觉。
[0030] 一旦输入405移动刻度距离630,则显示器上的项目115可以在来自框330的输入方向上以刻度距离的数量的因子来旋转。刻度距离630的移动可以用通知向用户指示,诸如点击声音或使用触觉反馈的设备的短暂震动。当然,其他反馈是可能的并且已被构想。参考图2A,项目115显示在显示器114上,其中歌曲“Black Dog(黑狗)”是所显示的第三首歌曲。如果用户向下移动两个刻度距离630,则项目可以向下旋转两个项目。在图2B中,“Black Dog”被向下移动两个点,现在作为第五首歌出现。如果用户接着向上移动四个刻度距离630,则“Black Dog”可以向上移动四个点而成为列出的第一首歌曲。当然,一个刻度距离630可以移动两个项目115和项目中的任何其他变化。
[0031] 在框350处,如果输入405离开输入设备116,则会发生各种事情,并且控制会传递到框360。如果输入405停留在输入设备116上,则该方法可返回到框340。
[0032] 在框360处,确定输入405移动的速度是否高于阈值。该速度可以用各种方式来确定。如公知的,通过将距离除以时间来确定速度。在一个实施例中,速度是通过使用在采样时间处输入405的位置来确定的,并且在采样时间期间输入行进的距离被用来确定速度。在使用刻度线的另一实施例中,使用输入穿过多个刻度线的多个时间和输入在刻度线上行进的距离来确定速度。在另一实施例中,存储输入405离开死区420的时间和离开死区500的位置。接着,存储输入405离开输入设备116的周界510的时间和输入405离开输入设备116 的周界510的位置。将这两个时间相减,且距离是在离开死区500的位置和输入405离开输入设备116的周界510的位置之间来确定的。从该数据可以确定输入405的速度。当然,计算速度的其他方式是可能的。阈值可以是任何速度。控制可以传递给框370。
[0033] 在框370处,可以按项目在输入方向上以逐渐降低的初始速度在显示器114上旋转经过并且初始速度与输入405移动的速度相关的方式显示显示器114上的项目115。在高层次上,项目115可以是歌曲,而这些歌曲可以顺续地旋转通过显示器114,如同轮上带着歌曲的自行车车轮在旋转一样。自行车车轮的旋转速度与施加到车轮上的力量的速度有关,并且车轮最终慢下来。如果应用刹车则车轮会更快地慢下来,或者如果非常猛烈地应用刹车则车轮会完全停止。此外,在车轮旋转的反方向上施加到车轮上的力量不会立即将车轮带到反方向上的较高速度,而是在该力量的方向上慢慢地开始旋转车轮。 [0034] 相似地,项目115能以与输入405的速度相关的速度旋转通过显示器114。快速的输入405,即快速挥过输入设备116会导致项目115列表的快速旋转。相似地,缓慢的输入405会导致项目115列表的缓慢旋转。可以设置阈值,并且超过阈值的输入405会导致创建最大速度。
[0035] 速度还可以与列表中的项目115的数量相关。如果项目115的数量高于项目限制,则旋转项目115的速度可以较快,并且如果项目115的数量低于项目限制,则速度可以较慢。例如,通过3000首歌曲的速度要比旋转通过10首歌的列表的速度快,即使在每种情况下应用相同速度的挥动输入405。
[0036] 此外,一旦列表正在旋转,则后续的输入405可以有各种各样的结果。参考图5,可以接收后续输入520并且在后续输入520周围创建新死区530。如果没有到新死区530之外的移动,并且输入405在保持时间段之前停止,则项目115在显示器上旋转的速度会降低。保持时间段是时间阈值。在一个实施例中,保持时间段是半秒。保持时间段可以是用户设置的、由应用程序设置的、或者在制造时设置。实际上,输入405类似于轻击输入设备116,而结果会是类似于轻抓自行车的刹车使得自行车会慢一些,而在该情况下,旋转项目的速度会以刹车因子来降低。刹车因子可以是工厂设置的、可以由应用程序设置、或可以由用户设置。
[0037] 如果后续输入520延长而超过了保持时间段,则项目115的旋转会进一步降低。实际上,如果用户输入405的时间比保持时间段长,则项目115的旋转 会减慢,类似于抓住自行车上的刹车。
[0038] 如果在保持时间段期满之前在新死区530之外有输入405,并且输入405是刻度长度630,则项目115的显示能在输入方向上以针对所经过的每个刻度长度630的因子来旋转。此外,项目115的旋转可以在移动刻度长度630之后停止。
[0039] 如果输入405经过输入设备116的周界510并且如果输入405在当前项目115旋转的方向上,则可以增加旋转的速度。类似于在同一方向上向旋转的车轮施加更多力量,车轮的速度和列表115旋转的速度会增加。如果输入405在与当前项目旋转相反的方向上,则项目会在输入方向上以与运动的速度和项目115在输入405之前移动的速度相关的速度来旋转。类似于在相反的方向上将力施加到旋转的车轮上,取决于力量的速度,车轮将减慢、停止、或在反方向上旋转。项目115的旋转能以类似的方式来响应。例如,如果项目115以每秒10首歌的速度向前旋转,并且在相反的方向上施加了每秒20首歌的挥动输入305,则结果会是在反方向上以每秒3首歌的速度行进。同样类似于自行车车轮,当旋转项目115的速度低于阈值时,项目115的列表将停止旋转。
[0040] 该方法的结果是可以用简单且直观的移动来快速扫描长列表。通过将车轮的概念结合到旋转通过项目115的列表,输入移动对用户变得直观。结果,用户能以改进的方式导航通过歌曲、照片、游戏、电话号码的列表,实际上可导航通过任何列表。 [0041] 尽管上文阐述了本发明的众多不同实施例的详细描述,但是应当理解,本发明的范围由本专利所附的权利要求书的言辞来限定。该详细描述应被解释为仅是示例性的,且不描述本发明的每一可能的实施例,因为描述每一可能的实施例即使不是不可能的也是不切实际的。可使用现有技术或在本专利提交日之后开发的技术来实现众多替换实施例,这仍将落入定义本发明的权利要求书的范围之内。