首页> 中国专利> 在触摸屏键盘与候选字母靠近关联的分区中提供词预测的触摸屏键盘

在触摸屏键盘与候选字母靠近关联的分区中提供词预测的触摸屏键盘

摘要

公开了一种方法,包括:从在显示器上显示的虚拟键盘接收字符输入;基于输入字符而生成预测输入字符集合;在所述虚拟键盘的与候选字母靠近地关联的分区中显示已生成字符集合。还公开了一种电子设备和键盘,被配置为执行所述方法。

著录项

  • 公开/公告号CN103380407A

    专利类型发明专利

  • 公开/公告日2013-10-30

    原文格式PDF

  • 申请/专利权人 捷讯研究有限公司;

    申请/专利号CN201280003919.5

  • 申请日2012-06-18

  • 分类号G06F3/02(20060101);G06F17/27(20060101);G06F3/0488(20130101);

  • 代理机构11021 中科专利商标代理有限责任公司;

  • 代理人余婧娜

  • 地址 加拿大安大略省沃特卢市

  • 入库时间 2024-02-19 21:05:45

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2017-05-03

    授权

    授权

  • 2017-04-26

    著录事项变更 IPC(主分类):G06F3/02 变更前: 变更后: 申请日:20120618

    著录事项变更

  • 2013-11-27

    实质审查的生效 IPC(主分类):G06F3/02 申请日:20120618

    实质审查的生效

  • 2013-10-30

    公开

    公开

说明书

技术领域

本发明要求于2012年2月24日提交的临时美国专利申请 no.61/603,043的优先权和利益,其通过其完整引用而合并到此。本发 明还涉及于2011年11月10日提交的共有美国专利申请 no.13/373,356,其通过其完整引用而合并到此。

技术领域

本发明通常涉及用于电子设备(例如手持电子设备)的输入方法, 更具体地说,涉及用于接收预测性文本输入并且对于电子设备生成字 符集合的方法。

背景技术

日益地,电子设备(例如计算机、上网本、蜂窝电话、智能电话、 个人数字助理、平板电脑等)具有允许用户将字符输入到应用(例如 词处理器或电子邮件应用)的触摸屏。归因于例如小的触摸屏区域, 尤其是在用户需要输入长消息的情况下,触摸屏上的字符输入可能是 棘手的任务。

附图说明

图1是根据在此公开的实施例的电子设备的示例框图。

图2是示出根据在此公开的实施例的用于预测所选字符集合的示 例方法的流程图。

图3A、图3B、图3C和图3D示出根据在此公开的实施例的触摸 屏的示例前视图。

图4A和图4B示出根据在此公开的实施例的触摸屏的示例前视 图。

图5示出根据在此公开的实施例的触摸屏的示例前视图。

图6A、图6B和图6C示出根据在此公开的实施例的触摸屏的示 例前视图。

图7示出根据在此公开的实施例的触摸屏的示例前视图。

图8A和图8B示出根据在此公开的实施例的触摸屏的示例前视 图。

图9示出根据在此公开的实施例的触摸屏的示例前视图。

图10A和图10B示出根据在此公开的实施例的触摸屏的示例前视 图。

图11A和图11B示出根据在此公开的实施例的触摸屏的示例前视 图。

图12A和图12B示出根据在此公开的实施例的触摸屏的示例前视 图。

图13A和图13B示出根据在此公开的实施例的触摸屏的示例前视 图。

图14A、图14B和图14C示出根据在此公开的实施例的触摸屏的 示例前视图。

图15示出根据在此公开的实施例的触摸屏的示例前视图。

图16示出根据在此公开的实施例的触摸屏的示例前视图。

图17是示出根据在此公开的实施例的示例方法的流程图。

图18是示出根据在此公开的实施例的示例方法的流程图。

图19是示出根据在此公开的实施例的示例方法的流程图。

图20示出根据在此公开的实施例的用于触摸屏上的显示的虚拟 键盘的示例前视图。

图21至图24示出根据在此公开的实施例的用于触摸屏上的显示 的虚拟键盘的示例前视图。

图25至图28示出根据在此公开的实施例的用于触摸屏上的显示 的虚拟键盘的示例前视图。

图29是示出根据在此公开的实施例的示例方法的流程图。

具体实施方式

现将详细参照各个实施例,其示例在附图中示出。每当可能时, 将贯穿附图使用相同的标号来指代相同或相似的部分。

本发明涉及一种电子设备,包括有线通信设备(例如具有触摸屏 的膝上型计算机)和移动手持无线通信设备(例如蜂窝电话、智能电 话、无线组织器、个人数字助理、带无线的上网本计算机、平板电脑 以及相似的设备)。电子设备也可以是没有无线通信能力的电子设备, 例如手持电子游戏设备、数码相框、数码相机或其它设备。

已经引入基本预测性文本输入解决方案,以协助电子设备上的输 入。这些解决方案包括:预测用户正输入的词,并且对于完成该词而 提供建议。但这些解决方案可能具有限制,在解决方案建议用户正尝 试输入的词之前,通常要求用户输入词中的多数或所有字符。尽管如 此,用户一般必须将焦点从键盘转向视图,并且考虑在电子设备的显 示器上的其它地方所显示的建议词,此后,回看键盘以继续键入。在 电子设备中输入信息的同时相对于键盘的人眼的重新聚焦尤其在撰写 长文本时会使眼睛疲劳并且麻烦、令人分心、或低效。此外,由于在 用户将注意力聚集在输入区域上然后回到虚拟键盘处的同时处理器待 机,处理周期损失并且浪费显示功率。

从设备资源和用户体验的角度来看,预测性文本输入解决方案的 效率有时取决于特定用户以及该特定用户与触摸屏的交互的性质。虚 拟键盘使用模式可以广泛地分类为两类:“快速”和“精确”。快速键 入者典型地是依赖于自动校正的快速两拇指键入者。这种使用模式最 接近地对应于有经验的频繁触摸屏用户。精确键入者典型地是谨慎的 键入者,其倾向于使用单个手指点来键击虚拟键盘中的键,并且一般 根据输入加速器而不是自动校正来选取预测。这种使用模式最接近地 对应于新手/新触摸屏用户以及潜在的单手(拇指)使用情况。

相应地,在此所描述的示例实施例允许电子设备的用户输入字符 而无需从键盘转移注意力并且后续重新聚焦。在此描述的示例实施例 还寻求包容不同的用户类型(例如快速键入者和精确键入者)以及不 同用户类型所提出的不同的效率挑战。

说明书以及权利要求书中使用数量词“一个”、“某个”意味着包 括其引入的一个或多于一个的特征,除非另外说明。因此,在“生成 字符集合”中所使用的“字符集合”可以包括生成一个或多于一个的 字符集合。相似地,尤其是在通过数量词已经引入特征之后使用代词 “该”或“所述”意味着包括其指代的一个或多于一个的特征(除非 另外声明)。因此,在“显示所述已生成字符集合”中所使用的术语“所 述已生成字符集合”包括显示一个或多个已生成字符集合。对在此所 包含的方位(例如水平和垂直)的引用是相对于图形用户界面的屏幕 方位,而不是任何物理方位。

在一个实施例中,提供一种方法,包括:从在显示器上所显示的 虚拟键盘接收字符输入;基于输入字符生成一个或多个预测输入字符 集合;在虚拟键盘内靠近与所述一个或多个已生成预测输入字符集合 中的后续候选输入字符相对应的键的位置处显示已生成预测输入字符 集合中的一个或多个。

在另一实施例中,提供一种电子设备,其包括处理器以及耦合到 所述处理器的显示器。所述处理器可以被配置为执行在此所描述的方 法。

在另一实施例中,提供一种在电子设备的显示器上所提供的键 盘。所述键盘可以包括多个键,每个键与多个字符中的一个或多个不 同字符相对应。响应于接收字符输入,所述键盘被配置为执行在此所 描述的方法。

这些示例实施例以及以下所描述的内容允许电子设备的用户输 入字符集合,而无需从虚拟键盘转移注意力并在后续重新聚焦。预测 并且提供用户可能预期的各个选项并且在键盘上适当的位置处进行该 操作允许关注点保留在键盘上,这增强了字符输入的效率、精度以及 速度。

图1是根据在此公开的示例实施例的电子设备100的框图。电子 设备100包括多个组件,例如主处理器102,其控制电子设备100的 整体操作。通过通信子系统104来执行包括数据通信和语音通信的通 信功能。解码器106对电子设备100所接收到的数据进行解压和解密。 通信子系统104从网络150接收消息并且将消息发送到网络150。网 络150可以是任何类型的网络,包括但不限于有线网络、数据无线网 络、语音无线网络和支持通过相同物理基站的语音通信和数据通信的 双模无线网络。电子设备100可以是电池供电设备,并且包括电池接 口142,用于容纳一个或多个电池144。

主处理器102耦合到附加子系统并且可以与附加子系统交互,该 附加子系统例如随机存取存储器(RAM)108、存储器110(例如硬驱、 CD、DVD、闪存或类似的存储设备)、一个或多个致动器120、一个 或多个力传感器122、辅助输入/输出(I/O)子系统124、数据端口126、 扬声器128、麦克风130、短距离通信132、其它设备子系统134以及 触摸屏118。

触摸屏118包括显示器112,具有连接到控制器116的触摸有效 覆盖层114。通过触摸有效覆盖层114来执行与图形用户界面(GUI) (例如在显示器112上呈现并且显示为用于输入字符的GUI的虚拟键 盘、或web浏览器)的用户交互。主处理器102经由控制器116与触 摸有效覆盖层114进行交互。字符(例如文本、符号、图像和其它项) 经由主处理器102显示在触摸屏118的显示器112上。当用户在与字 符关联的位置处对触摸屏进行触摸时,所述字符得以输入。

触摸屏118连接到并且受控于主处理器102。相应地,电子设备 100的主处理器102可以执行触摸事件检测和/或触摸事件位置的确 定。在一些实施例中,触摸事件包括手指键击、手指滑动、手写笔滑 动、手指或手写笔长按或手指按下达到预定时间段等。

虽然已经描述了触摸屏的具体实施例,但可以使用用于电子设备 的任何合适类型的触摸屏,包括电容式触摸屏、电阻式触摸屏、表面 声波(SAW)触摸屏、嵌入式光电管触摸屏、红外(IR)触摸屏、基 于的应变仪的触摸屏、光学成像触摸屏、色散信号技术触摸屏、声脉 冲识别触摸屏或受抑全内反射触摸屏,但不限于此。任何给定实施例 中所使用的触摸屏技术的类型将取决于电子设备及其特定应用和要 求。

主处理器102也可以与定位系统136交互,用于确定电子设备100 的位置。可以通过多种方式(例如通过计算机、通过包括或不包括于 电子设备100中的全球定位系统(GPS)、通过Wi-Fi网络或通过使得 手动地输入位置)来确定位置。也可以基于日程表条目来确定位置。

主处理器102也可以与方位传感器197交互,以用于感测设备的 方位。在一些示例中,方位传感器197可以是一个或多个加速器。在 一些示例中,方位传感器可以检测沿着多个正交轴的加速度。主处理 器102也可以与一个或多个接近度传感器198交互,以用于检测附近 物体的接近度。在一些示例中,接近度传感器可以是一个或多个红外 发射机/传感器配对。主处理器102也可以与环境光传感器199交互, 用于检测环境光的强度和/或色温。

在一些实施例中,为了识别网络接入的订户,电子设备100使用 插入到SIM/RUIM接口140的订户身份模块或可移除用户身份模块 (SIM/RUIM)卡138,以用于与网络(例如网络150)的通信。或者, 用户识别信息可以被编程到存储器110中。

电子设备100还包括主处理器102所执行并且典型地存储在存储 器110中的操作系统146和程序148。附加应用可以通过网络150、辅 助I/O子系统124、数据端口126、短距离通信子系统132或任何其它 合适的子系统而加载到电子设备100。

所接收到的信号(例如文本消息、电子邮件消息或网页下载)通 过通信子系统104处理,并且这种处理过的信息然后提供给主处理器 102。主处理器102处理所接收到的信号,以输出到显示器112、辅助 I/O子系统124或它们二者的组合。用户可以编写数据项(例如电子 邮件消息),其可以通过通信子系统104在网络150上被发送。对于语 音通信,电子设备100的整体操作是相似的。扬声器128输出从电信 号转换的可听信息,麦克风130将可听信息转换为电信号进行处理。

图2是示出根据在此公开的示例实施例的用于预测字符集合的示 例方法200的流程图。如在此所使用的那样,预测器(例如预测算法、 程序或固件)包括指令集,当由处理器(例如主处理器102)执行时 可以用于对所接收到的歧义文本输入消除歧义,并且提供用户可能预 期的各种选项,例如字符集合(例如词或短语、首字母缩写词、姓名、 俚语、口语、缩写词或其任何组合)。预测器也可以接收无歧义文本输 入,并且基于若干因素(例如上下文、使用频率以及本领域技术人员 所理解的其它因素)来预测用户潜在预期的字符集合。预测器可以预 测完成所接收的文本输入(被称为自动完成)的字符集合,校正所接 收到的文本输入(被称为自动校正),或其组合(例如在校正先前所输 入的文本输入的同时完成文本输入)。

例如,在预测器中是驻留在电子设备100的存储器110中的程序 148。相应地,方法200包括预测器,用于基于所输入的字符来生成与 后续候选输入字符相对应的字符集合。应理解,虽然在此所描述的示 例实施例针对处理器所执行的预测器程序,但预测器可以由虚拟键盘 控制器来执行。

方法200在块210开始,其中,处理器从触摸屏上显示的虚拟键 盘接收一个或多个字符输入。然而,如在此使用的那样,字符可以是 任何文字数字字符,例如字母、数字、符号、标点符号等。所输入的 字符可以显示在输入字段(例如以下图3-图9中进一步描述的输入字 段330)中,输入字段显示用户使用虚拟键盘所输入的字符。

在块220,处理器基于在块210中接收到的输入而生成一个或多 个字符集合,例如词或短语、首字母缩写词、姓名、俚语、口语、缩 写词或其任何组合。字符集合可以包括例如电子设备的存储器的字典 中所存储的字符集合(例如词或首字母缩写词)、用户先前所输入的字 符集合(例如姓名或首字母缩写词)、基于层级或树形结构的字符集合、 其组合、或处理器基于所定义的布置而选择的任何字符集合。

在一些实施例中,处理器可以使用用于生成字符集合的上下文数 据。上下文数据考虑输入字段中的字符的上下文。上下文数据可以包 括关于例如用户先前所输入的字符集合的信息、输入字段中所输入的 字符的语法属性(例如在句子中是需要名词还是动词作为下一字符集 合)、或其任何组合。例如,如果字符集合“the”已经输入到显示器, 则处理器可以使用上下文数据来确定名词(而非动词)将是在“the” 之后的下一字符集合。类似地,如果输入字符集合“Guy Lafleur played  in the National Hockey”,则基于上下文,处理器可以确定后续字符集 合可能是“League”。使用上下文数据,处理器也可以确定所输入的字 符是否不正确。例如,给定QWERTY虚拟键盘上的这些字符的接近 度,处理器可以确定所输入的字符应为“w”而不是“a”。

处理器102也可以包括后缀作为字符集合的部分,例如动词结尾、 形容词结尾、不同动词时态等,或用于构成完全字符集合的任何其它 变形。处理器102也可以使用所接收到的输入来生成后缀,例如复数 结尾或复数形式。任何已知的预测技术或软件可以用于在块220在生 成字符集合中处理所接收到的输入和上下文数据。

在一些示例实施例中,在块220所生成的字符集合可以开始于在 块210作为输入而接收的相同字符。例如,如果已经使用虚拟键盘接 收字符“pl”作为输入,则这些字符将由处理器接收作为输入。在这 些实施例中,在块220所生成的字符集合将全部开始于“pl”,例如 “please”或“plot”。对于已生成字符集合的长度没有限制。关于后 缀,如果用户已经输入字符“child”,例如,则在块220所生成的后 缀可以包括“-ren”,以构成字符集合“children”,或包括“-ish”,以 构成字符集合“childish”。

在一些示例实施例中,在块220所生成的字符集合可以简单地包 括与在块210作为输入而接收的相同字符。例如,如果所接收到的输 入是“x”,则处理器可以生成“example”或“xylophone”作为字符 集合。可以使用上下文数据来生成这些字符集合。

在另一示例实施例中,如果尚未接收到输入或已经使用分隔符 (例如<SPACE>),则已生成字符集合可以放置在与已生成字符集合 的首字母对应的后续候选输入字符上。

接下来,在块230,可以对来自块220的已生成字符集合进行排 序。排序反映用户可能期望的候选字符集合或与另一候选字符集合相 比用户可能选取的候选字符集合的可能性。

在一些实施例中,在块230,在排序中可以包括上下文数据。在 一些实施例中,电子设备可以被配置为基于先前所输入的字符集合, 将名词或形容词排序得较高。如果所输入的字符集合建议名词或形容 词,则在块230,处理器可以使用上下文数据来将与用户正键入的内 容对应的名词或形容词排序得较高。在附加实施例中,也可以对包括 形容词后缀(例如“-ish”或“-ful”)、短语、复数或其组合的字符集 合进行排序。上下文数据可以增加用户期望较高排序的已生成字符集 合的可能性。在一些实施例中,上下文数据可以包括关于用户当前正 运行或使用哪些程序或应用的信息。例如,如果用户正运行电子邮件 应用,则与用户的电子邮件系统相关联的字符集合(例如来自用户的 联系人列表的字符集合)可以用于确定排序。N元语法(包括一元语 法、二元语法、三元语法等)也可以用在字符集合的排序中。或者, 电子设备或用户的地理位置可以用在排序处理中。如果例如电子设备 识别出用户位于他/她的办公室,则通常与工作关联的字符集合可以在 列表中被排序得较高。另一方面,如果设备确定用户在海滩,则通常 与海滩关联的字符集合可以在列表中被排序得较高。

在块240,处理器基于排序来确定显示哪些字符集合。例如,较 高排序的字符集合更有可能被确定应显示它们。排序器(例如排序算 法、程序或固件)包括当处理器(例如主处理器102)执行时可以执 行以对此确定排序的指令集。在一些实施例中,排序器是驻留在电子 设备100的存储器110中的程序146。

在块250,所确定的字符集合显示在键盘上与预测为用户可能输 入的词中的下一字符的后续候选输入字符相对应的位置处。例如,如 果用户输入“pl”,则词“please”将显示在字母“e”——该词的后续 候选输入字符——的键上。类似地,词“plus”也将显示在字母“u” ——另一后续候选输入字符——的键上。后续候选输入字符可以是任 何字母数字字符,例如字母、数字、符号、标点符号等。

在一些实施例中,已生成字符集合显示在虚拟键盘上与后续候选 输入字符关联的键处或附近。其在键处或附近的放置方式可以取决于 例如词的大小或附近后续候选输入字符的数目以及它们的关联字符集 合的大小。

可以通过将会吸引用户注意力的方式来显示字符集合。在一些实 施例中,可以通过使得以所显示的字符外观字符集合对于用户更容易 看见的方式来增强或改变其外观。例如,可以通过背光、高亮、加下 划线、加粗、斜体、使用其组合或通过用于使得所显示的字符集合更 可见的任何其它方式来显示所显示的字符集合。

当在块240识别用于显示的字符集合时,处理器可以将所显示的 字符集合限制为顶部少数几个、或在较高排序的字符集合当中进行选 取。例如,如果两个字符集合都排序得较高,并且这些字符集合否则 将显示在同一键处,则电子设备可以被配置为仅显示最高排序的已生 成字符集合。在其它实施例中,这两个字符集合可以显示在同一键处 或其周围,或一个字符集合显示在一个键处,而另一字符集合显示在 另一键处。在一些示例实施例中,处理器可以考虑显示器大小来限制 已生成字符集合的数量。

在一些实施例中,排序可以用于在当显示在邻近后续候选输入字 符上时将(例如,因为它们各自的长度)彼此重叠的两个或更多个字 符集合之间进行选取。在此情况下,电子设备可以被配置为在键盘上 显示较高排序的字符集合。例如,如果在输入字母“E”之后字符集 合“establishment”在块240所生成的列表中排序第一,则可以在“S” 键处显示“establishment”。然而,当显示在虚拟键盘上时,其长度可 能占据“A”键和“D”键上的一些空间,潜在地阻挡了将显示在这些 键上或其附近的字符集合。在块240,可以确定将完全显示 “establishment”,并且在第一排序的字符集合“establishment”之前, 在“A”键或“D”键处将不会放置其它字符集合。仅显示最高排序的 字符集合的可选方式将是使用字符集合的缩写词或所识别的缩短形 式,有效地允许长字符集合与在虚拟键盘的邻近键上的其它字符集合 同时地显示在单个键的边界内或几乎在其之内。

图3-9示出根据在此公开的示例实施例的具有虚拟键盘320的触 摸屏118的一系列示例前视图。开始于图3A,触摸屏118包括触摸有 效的虚拟键盘320。虚拟键盘320的位置是可变的,从而虚拟键盘320 可以放置在触摸屏118上的任何位置处。触摸屏118可以被配置为同 时检测一个或多个对象的位置和可能的按压。触摸屏118包括两个区 域:(1)输入字段330,其在用户已经输入字符之后显示这些字符; (2)虚拟键盘320,其从用户接收输入。如贯穿本发明所描述的那样, 虚拟键盘在该键盘上与可能接收为来自用户的输入的后续候选输入字 符相对应的位置处显示字符集合。

可以通过任何字符集合(例如词、短语、首字母缩写词、姓名、 俚语、口语、缩写词或其任何组合)来实现图3-9所示的示例和实施 例。

如图3A所示,触摸屏118显示标准QWERTY虚拟键盘320;然 而,可以显示任何传统键配置,以在设备中使用,例如AZERTY、 QWERTZ、或具有键2上的“ABC”、键3上的“DEF”等的基于国际 电信联盟(ITU)标准(ITU E.161)的布局。虚拟键盘320包括空格 键350以及可以提供不同输入(例如标点、字母、数字、回车或返回 键以及功能键)的其它键。虽然虚拟键盘320示出为具有正方形,但 其可以具有任何其它形状(例如弧形)。

如图3A所示,触摸屏118显示输入字段330,其显示用户使用虚 拟键盘320所输入的字符。输入字段330包括光标340,其可以是下 划线(如所示)或任何其它形状(例如垂直线)。光标340表示将插入 下一输入字符、所选字符或所选字符集合的字符空间。

如图3B所示,当用户输入字符(在该示例中,“P”)时,该字符 显示在输入字段330中,光标340移动到将插入下一输入字符或词的 字符空间。在输入字符之后,如果输入多于一个的字符,则预测器(例 如预测算法或电路)可以生成全开始于字符“P”的字符集合360(对 于该实施例)。已生成字符集合显示在键盘上与可能接收为来自用户的 输入的后续候选输入字符相对应的位置处。如所述那样,已生成字符 集合360可以显示在与后续候选输入字符对应的键处或其附近(例如 在虚拟键盘320的各个A、E、H和O键之下)。实际上,稍微改变已 生成字符集合的显示位置可以解决后续候选输入字符的过度拥挤,有 效地允许显示更多的字符集合。

在图3B所示的示例中,“P”接收为输入,预测器生成若干字符 集合360,其显示在与每个已生成字符集合的后续候选输入字符相对 应的键处。如图3B所示,因为在“People”的“P”之后的下一字母 是“E”,所以“People”放置在“E”键处;因为在“Paul”的“P” 之后的下一字母是“A”,所以“Paul”将放置在“A”键处;因为在 “Phone”的“P”之后的下一字母是“H”,所以“Phone”将放置在 “H”键处;诸如此类。应注意,字符集合中的任何字符可以大写或 小写。

在图3C所示的实施例中,“L”是触摸屏所接收到的下一输入, 对于如输入字段330所示的处于第三字符位置中的光标340的当前位 置,预测器确定在与后续候选输入字符对应的键处(例如在虚拟键盘 320的各个A、E和U键之下)显示的若干已生成字符集合360。在 另一实施例中,已生成字符集合360可以呈现为包括后续候选输入字 符。例如,可以显示字符集合“Please”,从而字符“Pl”显示在“E” 键上的“E”字符之前,字符“ase”可以放置在“E”键上的“E”字 符之后。此外,在该实施例或其它实施例中,可以通过不同于“Pl” 和“ase”的方式来呈现所显示的“E”,由此在使得其容易可见的同时 使得用户能够仍然将其识别为“E”键,从而用户可以输入已生成字 符集合“Please”或输入字符“E”。“E”可以大写或小写。在其它实 施例中,可以在键处显示后缀。使用以上字符集合“Please”的示例, “ase”可以显示在“E”键处,从而将出现字符集合片段“-ease”或 “-Ease”。

如果用户输入已生成字符集合,则该字符集合放置在输入字段 330中。图3D可见该情况,其中,用户已经输入已生成字符集合 “Please”,导致其在输入字段中的放置。如果用户想要输入新的字符 集合,则在字符集合之后插入空格。用户可以通过各种方式来输入已 生成字符集合,包括通过与输入字符键的方式不同的方式。例如,为 了输入已生成字符集合,用户可以使用手指或手写笔来滑动已生成字 符集合。如在此使用的那样,滑动包括滑动字符集合自身或在字符集 合附近进行滑动或触摸。对于后一实施例,设备可以检测字符集合附 近的滑动或触摸,无论其为已生成字符集合还是预测字符集合(以下 将要描述),通过使用预测器,确定用户期望输入的字符集合。在另一 实施例中,用户可以按下键达到预定时间段(例如长按)。该键可以是 例如与字符集合中的后续候选输入字符对应的键。因此,如果期望输 入字符集合“Please”而不是“E”,则电子设备100可以被配置为要 求按下“E”键达到预定时间段以触发“Please”的输入。

在已经确定已生成字符集合360之后,如图3D所示,可以显示 预测字符集合380,在此示出在空格键350处。预测字符集合380可 以不同于已生成字符集合360(如图3A-3C所示),并且是系统对于预 测用户可能预期的下一字符集合的尝试。预测器用于确定预测字符集 合380。至于所显示的已生成字符集合360,可以通过任何多种方式将 预测字符集合380接收为输入,包括以手指或手写笔接收预测字符集 合的滑动,或在预定时间段内接收键(例如空格键或另一指定键)的 按压(长按)。

在图4A中,电子设备100从虚拟键盘320接收“C”作为输入。 此外,预测器部分地基于所接收到的输入来确定已生成字符集合460。 在图4B中,电子设备100从虚拟键盘接收“O”作为输入,并且在输 入字段330中输出“O”。如图4A所示,在接收到“C”字符输入之 后,在“O”键处显示字符集合“count”。由于以仅输入“O”字符的 方式按压“O”键,因此如图4B所示,“O”显示为当前所输入的字 符集合的第二字符,用户不输入字符集合“count”。可选地,如果用 户想要输入已生成字符集合“count”,则用户可以通过与输入“O”键 的方式不同的方式(例如通过滑动字符集合“count”或与键入相反, 通过在“O”键上长按)在图4A中输入“O”键。返回图4B,在输 入“O”之后,已生成字符集合460显示在与后续候选输入字符对应 的键处,如图4B所示。

图5示出显示随后为空格的字符集合“contact”的输入字段330。 在此情况下,用户在“N”键处输入如图4B所示的已生成字符集合 “contact”460。返回参照图5,在输入字段中,在所生成的词之后自 动插入<SPACE>字符。所预测的词“me”580现在显示在空格键350 上。

如果接收所预测的词“me”580作为输入,则词“me”580然后 显示在后随如图6A所示的空格的输入字段330中,然后示出在空格 键350上所显示的所预测的词680“immediately”。在完成的词和空格 已经显示在输入字段330中之后,呈现所预测的词。

图6B示出在用户已经按下“T”键之后触摸屏118已经接收“T” 字符作为输入的示例。在此情况下,触摸屏118在输入字段330中显 示“t”。已生成字符集合660(例如“Tuesday”、“today”和“Thursday”) 显示在后续候选输入字符的键处。图6C示出在用户按下“O”键而不 是如图6B所示输入已生成字符集合660“today”之后电子设备100 已经接收“o”字符作为输入的示例。因此,“o”现在显示在输入字段 330中。

图7示出在用户选择空格键之后触摸屏118已经接收<SPACE>字 符作为输入的示例。在此情况下,触摸屏118插入<SPACE>字符,然 后在空格键350处显示预测字符集合“talk”780。

图8A示出在用户按下“D”键之后触摸屏118已经接收“d”字 符作为输入的示例。在此情况下,触摸屏118在输入字段330中显示 “d”,并且在与后续候选输入字符对应的键上显示已生成字符集合 “discuss”、“divide”和“dinner”860。在该示例实施例中,虽然字符 “I”从不被接收作为输入,但电子设备100确定已生成字符集合 “discuss”、“divide”和“dinner”860是要显示在触摸屏上的字符集 合。在该实施例中,因为这些字符集合中的每一个均具有“i”作为第 二字母,所以触摸屏118使用字符集合中的另一后续字母(例如在“S” 键之下的“discuss”、在“V”键之下的“divide”以及在“N”键之下 的“dinner”)来显示已生成字符集合。在其它实施例中,已生成字符 集合“discuss”、“divide”和“dinner”860可以显示在“I”键处或其 附近。

图8B示出在用户选取已生成字符集合“discuss”860之后触摸屏 118已经接收字符集合“discuss”作为输入的示例。在该示例中,触 摸屏118在空格键350处显示预测字符集合“this”880。

图9示出在用户选择“this”作为期望的预测字符集合880之后触 摸屏118接收“this”字符集合作为输入的示例。在该示例中,触摸屏 118在空格键350处显示预测字符集合“now”980。

触摸屏118也可以在消息的键入期间的任何时间接收标点作为输 入。如果用户决定在输入已生成字符集合或预测字符集合之后使用标 点,则删除<SPACE>字符(例如,在图9的光标之前的<SPACE>字符), 并且插入所输入的标点。

图10A和图10B示出根据在此公开的实施例的触摸屏的示例前视 图。图10A示出触摸屏118在文本条1030中显示“The co”并且若干 已生成字符集合1060显示在后续候选输入字符处的示例。在该示例 中,触摸屏118在“T”键之下显示已生成字符集合“cottage”1060, 在“O”键之下显示已生成字符集合“cook”1060,在“A”键之下显 示已生成字符集合“coat”1060,在“F”键之下显示已生成字符集合 “coffee”1060。

图10B示出在用户已经选择已生成字符集合1060“cook”之后触 摸屏118接收字符集合“cook”作为输入的示例。字符集合“cook” 连同<SPACE>字符一起插入到输入字段1030中。在该示例中,字符 集合包括新的预测字符集合(例如词1090、后缀1092(例如在“E” 键之下的“-ed”和在“I”键之下的“-ing”)以及复数1094(例如在 “S”键之下的“-s”)),其全部显示在后续候选输入字符处。每个所 预测的词1090、后缀1092或复数1094位于匹配所预测的词1090、后 缀1092或复数1094的首字母的各个后续候选输入字符上。现在,用 户具有所加入的输入预测字符集合1090、1092和1094的选项。通过 与上述相同的方式来进行输入。在一些实施例中,当触摸屏118接收 后缀1092或复数1094作为输入时,删除光标1040与“cook”之间的 <SPACE>字符,并且将对应输入后缀或复数加入到“cook”的末尾。

图11A示出触摸屏118在文本条1130中显示“Did she co”并且 若干已生成字符集合1160显示在后续候选输入字符处的示例。在该示 例中,触摸屏118在“R”键之下显示已生成字符集合“correct”1160, 在“P”键之下显示已生成字符集合“copy”1160,在“N”键之下显 示已生成字符集合“contact”1160。虽然在图10A和图11A的文本条 中提供“co”,但触摸屏在已生成字符集合的各个文本条1030和1130 中基于字符的上下文而显示不同的已生成字符集合。例如,在图10A 中,字符“co”跟随“The”,这说明后面应是以“co”开始的名词。 在图11A中,字符“co”跟随代词,这说明后面应是以“co”开始的 动词。如上所述,上下文数据可以用于基于例如文本条中的字符集合 或用户进行的先前动作来确定特定字符集合何时是更适合的。

图11B示出在用户已经选择已生成字符集合1160“correct”之后 触摸屏118接收字符集合“correct”作为输入的示例。在该示例中, 字符集合“correct”插入在输入字段1130中,并且<SPACE>字符也被 插入。预测字符集合(例如词1190和后缀1192)现在显示在后续候 选输入字符处。在该示例中,虽然后缀“-ing”和“-ily”都对应于“I” 键,但触摸屏118以“I”键来显示“-ing”,并且以“L”键来显示“-ily”。 如上所述,可以基于排序、上下文数据或二者的组合而将所预测的后 缀分配给特定键。在该实施例中,“-ing”后缀可能具有比“-ily”后 缀更高的排序,因此分配给“I”键。相应地,基于对应“L”字符在 “-ily”后缀中而将“-ily”后缀分配给“L”键。

图12A示出触摸屏118在文本条1230中显示“The ch”并且若干 已生成字符集合1260显示在后续候选输入字符处的示例。在该示例 中,已生成字符集合1260包括“child”和“chimp”。在该实施例中, 虽然“child”和“chimp”中的第三字母是相同的,但触摸屏在“I” 键之下显示“child”,在“C”键之下显示“chimp”。可以基于(如上 所述的)排序来确定哪些已生成字符集合在哪个候选输入键之下。如 该实施例所示,即使键可能不与文本条1230中的字符的任何后续字符 关联,触摸屏118也可以在该键上显示已生成字符集合(在此情况下, “chimp”)。

图12B示出在用户已经选择已生成字符集合1260“child”之后触 摸屏118接收字符集合“child”作为输入的示例。在输入字段1230 中插入字符集合“child”,在该示例中,不插入<SPACE>字符。预测 字符集合(例如词1290和后缀1292)现在显示在后续候选输入字符 处。在该示例中,虽然后缀“-ish”和“-ily”都对应于“I”键,但触 摸屏118以“I”键来显示“-ish”,并且以“L”键来显示“-ily”。如 上所述,可以基于排序、传统数据或二者的组合而将所预测的后缀分 配给特定键。在该实施例中,“-ish”后缀可能具有比“-ily”后缀更高 的排序,因此分配给“I”键。相应地,基于对应“L”字符在“-ily” 后缀中而将“-ily”后缀分配给“L”键。

图13A示出触摸屏118在文本条1330中显示“The texture and” 并且若干预测字符集合(例如词1390)显示在后续候选输入字符处的 示例。图13B示出在用户已经选择预测字符集合“taste”之后触摸屏 118接收字符集合“taste”作为输入的示例。在该示例中,在“taste” 之后插入<SPACE>字符。因此,预测字符集合(例如词1390和后缀 1392)显示在后续候选输入字符处。

图14A示出触摸屏118在文本条1430中显示“The hospital staffc” 并且若干已生成字符集合1460显示在后续候选输入字符处的示例。图 14B示出在用户已经选取已生成字符集合“care”之后触摸屏118接 收字符集合“care”作为输入的示例。已生成字符集合“care”现在连 同<SPACE>一起放置在输入字段1430中,预测字符集合(例如词1490 和后缀1492)显示在后续候选输入字符处。图14C示出在用户已经选 取所预测的后缀“-ful”之后触摸屏118接收后缀“-ful”作为输入(由 此将字符集合“care”修改为“careful”)的示例。因此,字符集合“careful” 现在插入输入字段1430中。注意,在一些实施例中,输入词或后缀可 以修改所输入的词或词片段。例如,如果用户输入“spicy”,并且“ness” 是所预测的后缀并且被输入,则“spicy”将改变为“spiciness”,去掉 “y”并且添加“iness”。在其它实施例中,“happy”可以改变为 “happiness”,或“conceive”可以改变为“conceivable”。

图15示出歧义键盘1520的示例,其可以具有分配给一个键的多 个字符(例如,比如电话小键盘,其中,“A”、“B”和“C”分配给 键2;“D”、“E”和“F”分配给键3,诸如此类)。例如,字符“Q” 和“W”可以分配给一个键,字符“E”和“R”分配给另一键。在该 示例中,用户已经通过按下随后为“L”键的“op”键而输入字符“Ol”。 使用预测器,已生成字符集合1560显示在后续候选输入字符处。由于 首先按下的键可能输入“O”或“P”,并且其次按下的键输入“L”, 因此已生成字符集合1560将以“OL”或“PL”开始,例如图15中的 已生成字符集合1560所示。

图16示出歧义键盘1620的另一示例。在该示例中,已生成字符 集合“plum”和“olive”1660显示在“ui”键附近。字符集合也可以 已经显示在“ui”键处或其附近。在此,两个字符集合都对应于与键 对应的特定输入,即plum的第三字母是“u”,olive的第三字母是“i”。 触摸屏118(经由主处理器102)可以基于用户的动作而在任一字符集 合之间进行区分。例如,用户可以在“ui”键的右边或其附近滑动以 输入“olive”,或在“ui”键的左边或其附近滑动以输入“plum”。

可以通过任何字符集合(例如词、短语、首字母缩写词、姓名、 俚语、口语、缩写词或其任何组合)来实现图17、图18和图19所示 的示例和实施例。

图17以流程图形式示出根据一些实施例的方法1700。方法1700 可以通过处理器(例如主处理器102)而得以实现,并且存储在有形 计算机可读介质(例如硬驱、CD、DVD、闪存等)上。在块1710, 处理器接收字符输入。在块1720,处理器在触摸屏上的后续候选输入 字符的键处或其附近显示已生成字符集合,如上所述。

在块1730,处理器接收用户所选取的已生成字符集合的输入。如 果用户并未选取在后续候选输入字符的键处或其附近的已生成字符集 合,则所述方法重新开始于块1710,其中,触摸屏可以接收另一字符 输入。如果接收已生成字符集合作为输入,则在块1740,将已生成字 符集合和<SPACE>字符插入输入字段(例如图3-图9的输入字段330) 中。如上所述,用户可以例如通过在已生成字符集合处或其附近滑动 或通过长按与后续候选输入字符对应的键来选取已生成字符集合。

继续在块1750处,如果处理器检测到不要插入标点,则所述方 法重新开始于块1710。如果要插入标点,则所述方法继续到块1760, 其中,删除<SPACE>字符并且适当的标点加入到输入字段。在块1760 之后,所述方法在块1710重又开始。

图18是示出根据一些实施例的示例方法1800的流程图。方法 1800可以通过处理器(例如主处理器102)而得以实现,并且存储在 有形计算机可读介质(例如硬驱、CD、DVD、闪存等)上。在块1810, 处理器接收字符输入。

在块1820,处理器在键盘上与触摸屏上的后续候选输入字符相对 应的位置处或附近显示已生成字符集合。在块1830,处理器接收用户 所选取的已生成字符集合的输入。如果用户并未选取在后续候选输入 字符的键处或附近的已生成字符集合,则所述方法重新开始于块 1810,其中,处理器可以接收另一字符的输入。如果接收已生成字符 集合作为输入,则在块1840,已生成字符集合和<SPACE>字符插入输 入字段(例如图3-9的输入字段330)中。如上所述,用户可以例如 通过在已生成字符集合处或其附近滑动或通过按下与后续候选输入字 符对应的键达到预定时间段来选取已生成字符集合。

在块1850,在块1830中输入已生成字符集合之后,与已生成字 符集合不同的预测字符集合显示在键盘的空格键上。通过使用预测器 来确定块1850中所显示的预测字符集合。在一些实施例中,一个或多 个预测字符集合可以放置在除了空格键之外的一个或多个键上。

在块1860,处理器可以基于用户输入来确定是否已经接收预测字 符集合的输入。如果因为用户尚未选取预测字符集合所以触摸屏尚未 接收到预测字符集合的输入,则所述方法在块1810重新开始。如果处 理器已经接收到预测字符集合的输入,则所述方法继续到块1870,其 中,预测字符集合和<SPACE>字符插入在输入字段中。自此,方法1800 可以返回到块1810或块1850。

即使方法1800不显示方法1700所示的标点说明,如块1750和 1760所示的标点说明也可以类似地应用于方法1800。

图19是示出根据一些实施例的示例方法1900的流程图。在框 1910,预测字符集合显示在对应后续候选输入字符处。在这些实施例 中,尚未接收到输入,或尚未激活分隔符(例如输入<SPACE>)。在 此,一个或多个预测字符集合(例如词、后缀或其组合)放置在与已 生成字符集合的首字母对应的后续候选输入字符上。移动到框1920, 基于用户的选择来确定触摸屏是否接收到字符集合(例如词或后缀) 的输入。如果接收到输入,则所述方法移动到块1930,其中,预测字 符集合和<SPACE>字符插入输入字段中。然后,所述方法在块1910 重又开始。如果触摸屏未接收到字符集合的输入,则触摸屏可用于接 收字符(如图17的块1710或图18的块1810所描述的那样),并且继 续方法(例如图17的方法1700或图18的方法1800甚至图19的方法 1900)。

图20示出具有输入字段2030的虚拟键盘2020的另一示例。字 符集合“Please con”由触摸屏接收为输入,并且随后有光标2040而 显示在输入字段2030中,光标2040可以是垂直线(如所示那样)或 任何其它形状(例如上述下划线)。对于当前词内的光标2040的当前 位置(其处于当前词的第四字符位置中,如输入字段2030所示),预 测器部分地基于所接收到的输入来确定一个或多个已生成字符集合 2060。当前词是光标当前所位于的词。在所示示例中,显示已生成字 符集合2060“cones”、“contact”、“construction”和“connect”。对于 如输入字段2030所示的在第三字符位置中的光标2040的当前位置, 每个已生成字符集合2060显示在与后续候选输入字符对应的键处(例 如,分别在虚拟键盘2020的E、T、S和N键之下)。

在所示示例中,已生成字符集合显示在与后续候选输入字符关联 的虚拟键盘2020的键处或其附近。在与后续候选输入字符对应的键处 或其附近显示已生成字符集合2060取决于例如已生成字符集合2060 的大小以及与其它后续候选输入字符的附近键相关联的已生成字符集 合的大小。当与虚拟键盘2020中的同一行键中的附近键相关联的已生 成字符集合太大而无法在不彼此重叠的情况下或在已生成字符集合之 间没有预定距离的情况下同时显示时,处理器102限制显示已生成字 符集合。处理器102可以使用以下项之一或任何组合来限制已生成字 符集合:每个已生成字符集合的排序、每个已生成字符集合的大小以 及要显示的以保持已生成字符集合之间的预定距离的每个已生成字符 集合之间的距离。这会导致显示比虚拟键盘2020中的关联键更大的一 个或多个已生成字符集合。

在一些示例中,如果两个已生成字符集合排序都很高,并且这些 字符集合否则将显示在附近键处,但无法以显示文本大小显示并且仍 然保持已生成字符集合之间的预定距离,则电子设备将被配置为仅显 示最高排序的已生成字符集合。这导致显示最可能的已生成字符集合。 在其它示例中,仅显示已生成字符集合中的最长的。这有益于允许较 快输入较长的词节省时间和处理周期,由此促进预测性文本输入解决 方案。在其它示例中,仅显示最短的已生成字符集合。这在至少针对 一些用户来说较短词可能更普遍时可能是有益的,由此允许较快输入 词,这样节省时间和处理周期,由此促进预测性文本输入解决方案。

在一些示例中,处理器102可以仅限制在虚拟键盘2020中的同 一行键中的相近/邻近键中所显示的已生成字符集合。在一些示例中, 处理器102可以限制在虚拟键盘2020中的同一行键中的相近/邻近行 中所显示的已生成字符集合,从而无论所生成的字符集和或每个已生 成字符集合之间的距离如何,已生成字符集合都从不显示在相近/邻近 键中。在这些示例中,处理器102使用排序来确定显示哪些已生成字 符集合。

在其它示例中,当与虚拟键盘2020中的不同的行的键中的附近 键关联的已生成字符集合太大而无法在彼此不重叠的情况下或在已生 成字符集合之间没有预定距离的情况下同时显示时,处理器102可以 限制要显示的已生成字符集合。在其它示例中,当与虚拟键盘2020 中的相同或不同列的键中的附近键关联的已生成字符集合太大而无法 在彼此不重叠的情况下或在已生成字符集合之间没有预定距离的情况 下显示时,处理器102可以限制要显示的已生成字符集合。

如上所述,用户可以使用手指或手写笔来滑动已生成字符集合以 输入该已生成字符集合。与之对比,可以通过使用手指或手写笔在虚 拟键盘2020中键击各个键来输入单个字母。触摸屏使用触摸事件的移 动和持续时间在键击事件与滑动事件之间进行区分,其细节是本领域 公知的,无须赘述。虚拟键盘2020中的每个键以及要显示的每个已生 成字符集合2060在触摸屏上具有关联目标区域。与每个已生成字符集 合关联的目标区域可以大于和/或覆盖与其所关联的后续候选输入字 符对应的键的目标区域以及附近键(例如同一行中的相近键)。用户仅 需要在所显示的已生成字符集合上或其附近滑动以输入已生成字符集 合。这样允许通过创建更大以及更多的可访问目标区域来快速输入已 生成字符集合,由此节省时间和处理周期。在一些示例中,可以通过 检测在所显示的已生成字符集合处或其附近在任何方向上的滑动来输 入已生成字符集合。在其它示例中,可以仅通过检测在所显示的已生 成字符集合处或其附近在特定方向上的滑动来输入已生成字符集合。 所述特定方向可以与特定方向所显示的已生成字符集合的方向(例如 在所示示例中,左边或右边)关联。在一些示例中,当滑动具有与所 显示的已生成字符集合(其可以相同于或大于所显示的已生成字符集 合)关联的目标区域内的初始接触点时,滑动处于所显示的已生成字 符集合处或其附近。

触摸屏键盘的分区中的词预测

图21示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符集合“Ec”由触摸屏接收为输入,并且显示在输入 字段2130中,随后是光标2140,光标2140可以是垂直线(如所示那 样)或任何其它形状(例如上述下划线)。文本输入工具条2150显示 在用户界面屏幕的顶部,在输入字段2130之上。预测器部分地基于针 对当前词内的光标2140的当前位置(其处于当前词的第三字符位置 中,如输入字段2130所示)的所接收到的输入来确定一个或多个已生 成字符集合2160。当前词是光标当前所位于的词。在所示示例中,显 示已生成字符集合2160“Every”、“Ecuador”和“Economy”。已生成 字符集合2160显示在虚拟键盘2120内的所设置的位置处,而不是在 与上述示例中的后续候选输入字符对应的键处。所描述的实施例中的 虚拟键盘2120中的所设置的位置由虚拟键盘2120的分区(或区域) 限定。在至少一些实施例中,通过划分虚拟键盘2120来限定分区。虚 拟键盘2120可以划分为相等或不等的分区。分区可以基本上占据整个 虚拟键盘2120或少于整个虚拟键盘2120。在一些示例中,分区可以 占据用户界面屏幕的其它部分(例如输入字段2130)。在图21至图24 中,虚拟键盘2120的分区由三列(例如左列、中间列和右列)限定。 在其它实施例中可以使用不同数量的列。可以通过将虚拟键盘2120 划分为相等的部分(即通过将虚拟键盘2120划分为三个相等大小的 列)来限定各列。

在所示示例中,所显示的字符集合水平地(或基本上水平地)对 齐,以促进通过使得所显示的已生成字符集合更容易看见而使用以及 选择预测作为输入。在所示示例中,已生成字符集合显示在分离两行 键的水平“间隔”条(具体地说,将顶行键与顶行之下的第二行键分 离的水平条)中。这样避免了阻挡虚拟键盘2120的键,由此在增加所 显示的预测的可见性的同时促进单独键的输入。所显示的已生成字符 集合可以位于别处,例如在分离两个不同行的键的水平条内。

处理器102使用每个已生成字符集合的排序来确定显示已生成字 符集合的分区。具有最高排序的已生成字符集合显示在与具有最高排 序的已生成字符集合的后续候选输入字符关联的分区中。与后续候选 输入字符关联的分区典型地是已生成字符集合的后续候选输入字符所 处的分区(即目前所描述的实施例中的列)。在所示示例中,已生成字 符集合“Economy”具有最高排序,已生成字符集合的后续候选输入 字符是字母“o”。相应地,已生成字符集合“Economy”位于字母“o” 所处的右列中。

处理器102然后确定与具有下一最高排序(即第二高排序)的已 生成字符集合的后续候选输入字符关联的分区。如果该分区已经分配 给已生成字符集合(例如最高排序的已生成字符集合,其在所示示例 中分配给右列),则丢弃已生成字符集合。例如,如果已生成字符集合 “Economics”具有第二高排序,则由于关联分区与分配给具有最高排 序的已生成字符集合“Economy”的分区相同,因此将丢弃“Economics” 的预测。处理器102然后确定与具有下一最高排序(即第三高排序) 的已生成字符集合的后续候选输入字符关联的分区。如果该分区已经 分配给已生成字符集合(例如最高排序的已生成字符集合),则丢弃已 生成字符集合。重复该处理,直到第二分区与已生成字符集合关联, 或没有已生成字符集合剩余。在所示示例中,要与已生成字符集合相 关联的第二分区是左列,与第二分区(例如左列)关联的已生成字符 集合是“Every”。即使字符集合“Ec”被接收作为输入(其并非词“Every” 的词根),也预测字符集合“Every”。

处理器102然后确定与具有下一最高排序的已生成字符集合的后 续候选输入字符相关联的分区。如果该分区已经分配给已生成字符集 合(例如在所示示例中左列和右列已经分配给已生成字符集合),则丢 弃已生成字符集合。例如,如果已生成字符集合“Everyone”具有下 一最高排序,则由于关联分区是已经分配给已生成字符集合“Every” 的左列,因此将丢弃“Everyone”的预测。处理器102然后确定与具 有下一最高排序的已生成字符集合的后续候选输入字符关联的分区。 如果该分区已经分配给已生成字符集合,则丢弃已生成字符集合。重 复该处理,直到第三分区与已生成字符集合相关联(例如直到分配了 中间列),或没有已生成字符集合剩余。在所示示例中,要与已生成字 符集合相关联的第三分区是中间列,与第三分区(例如中间列)关联 的已生成字符集合是“Ecuador”。

在所示示例中,虚拟键盘2120具有三个分区。如果使用更多分 区,则该处理将继续,直到分区与已生成字符集合相关联,或没有已 生成字符集合剩余。

图22示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符“T”由触摸屏接收为输入,并且显示在输入字段 2130中,随后是光标2140,光标2140可以是垂直线(如所示那样) 或任何其它形状(例如上述下划线)。预测器部分地基于针对当前词内 的光标2140的当前位置(其处于当前词的第二字符位置中,如输入字 段2130所示)的所接收到的输入来确定一个或多个已生成字符集合 2160。在所示示例中,显示已生成字符集合2160“Thanks”和“To”。 显示比分区更少的已生成字符集合,意味着仅两个预测存在,或预测 因寻求将已生成字符集合与已经分配给另一已生成字符集合的分区相 关联的冲突而耗尽。

图23示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符集合“An”由触摸屏接收为输入,并且显示在输入 字段2130中,随后是光标2140,光标2140可以是垂直线(如所示那 样)或任何其它形状(例如上述下划线)。预测器部分地基于针对当前 词内的光标2140的当前位置(其处于当前词的第三字符位置中,如输 入字段2130所示)的所接收到的输入来确定一个或多个已生成字符集 合2160。在所示示例中,显示已生成字符集合2160“And”、“Anyway” 和“Another”。

图24示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符集合“This”由触摸屏接收为输入,并且显示在输 入字段2130中,随后是光标2140,光标2140可以是垂直线(如所示 那样)或任何其它形状(例如上述下划线)。预测器部分地基于针对当 前词内的光标2140的当前位置(其处于当前词的第一字符位置中,如 输入字段2130所示)的所接收到的输入来确定一个或多个已生成字符 集合2160。在所示示例中,预测器预测正输入的句子中的下一词,其 中,显示已生成字符集合2160“will”、“is”和“message”。

图25示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符“A”由触摸屏接收为输入,并且显示在输入字段 2130中,随后是光标2140,光标2140可以是垂直线(如所示那样) 或任何其它形状(例如上述下划线)。文本输入工具条2150显示在用 户界面屏幕的顶部,在输入字段2130之上。预测器部分地基于针对当 前词内的光标2140的当前位置(其处于当前词的第二字符位置中,如 输入字段2130所示)的所接收到的输入来确定一个或多个已生成字符 集合2560。当前词是光标当前所位于的词。在所示示例中,显示已生 成字符集合2560“Are”、“As”和“And”。已生成字符集合2560显 示在虚拟键盘2120内的所设置的位置处,而不是在先前示例中的后续 候选输入字符对应的键处。所描述的实施例中的虚拟键盘2120中的所 设置的位置由虚拟键盘2120的分区限定。虚拟键盘2120可以划分为 相等或不等的分区。分区可以基本上占据整个虚拟键盘2120或少于整 个虚拟键盘2120。在一些示例中,分区可以占据用户界面屏幕的其它 部分(例如输入字段2130)。在图25至图28中,虚拟键盘2120的分 区由三行(例如顶行、中间行和底行)而不是图21至图24中的列来 限定。在其它实施例中可以使用不同数量的行。可以通过将虚拟键盘 2120划分为相等的部分(即通过将虚拟键盘2120划分为三个相等大 小的行)来限定各行。

在所示示例中,所显示的字符集合垂直地(或基本上垂直地)对 齐,以促进通过使得所显示的已生成字符集合更容易看见而使用并且 选择预测作为输入。在所示示例中,在分离各行键的水平“间隔”条 中显示已生成字符集合,所显示的字符集合中的每一个位于不同的间 隔条中。这样避免了阻挡虚拟键盘2120的键,由此在增加所显示的预 测的可见性的同时促进单独键的输入。所显示的已生成字符集合可以 位于别处。

处理器102使用每个已生成字符集合的排序来确定显示已生成字 符集合的分区。具有最高排序的已生成字符集合显示在与具有最高排 序的已生成字符集合的后续候选输入字符关联的分区中。与后续候选 输入字符关联的分区典型地是已生成字符集合的后续候选输入字符所 处的分区(即目前所描述的实施例中的行)。在所示示例中,已生成字 符集合“Are”具有最高排序,已生成字符集合的后续候选输入字符是 字母“r”。相应地,已生成字符集合“Are”位于字母“r”所处的顶 行中。

处理器102然后确定与具有下一最高排序(即第二高排序)的已 生成字符集合的后续候选输入字符关联的分区。如果该分区已经分配 给已生成字符集合(例如最高排序的已生成字符集合,其在所示示例 中分配给顶行),则丢弃已生成字符集合。例如,如果已生成字符集合 “Array”具有第二高排序,则由于关联分区与分配给具有最高排序的 已生成字符集合“Are”的分区相同,因此将丢弃“Array”的预测。 处理器102然后确定与具有下一最高排序(即第三高排序)的已生成 字符集合的后续候选输入字符关联的分区。如果该分区已经分配给已 生成字符集合(例如最高排序的已生成字符集合),则丢弃已生成字符 集合。重复该处理,直到第二分区与已生成字符集合关联,或没有已 生成字符集合剩余。在所示示例中,待与已生成字符集合关联的第二 分区是中间行,与第二分区(例如左列)关联的已生成字符集合是 “As”。

处理器102然后确定与具有下一最高排序的已生成字符集合的后 续候选输入字符关联的分区。如果该分区已经分配给已生成字符集合 (例如在所示示例中顶列和中间列已经分配给已生成字符集合),则丢 弃已生成字符集合。例如,如果已生成字符集合“Assume”具有下一 最高排序,则由于关联分区是已经分配给已生成字符集合“As”的左 列,因此将丢弃“Assume”的预测。处理器102然后确定与具有下一 最高排序的已生成字符集合的后续候选输入字符关联的分区。如果该 分区已经分配给已生成字符集合,则丢弃已生成字符集合。重复该处 理,直到第三分区与已生成字符集合相关联(例如直到分配底行),或 没有已生成字符集合剩余。在所示示例中,待与已生成字符集合关联 的第三分区是底行,与第三分区(例如中间列)关联的已生成字符集 合是“And”。

在所示示例中,虚拟键盘2120具有三个分区。如果使用更多分 区,则该处理将继续,直到分区与已生成字符集合关联,或没有已生 成字符集合剩余。

图26示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符集合“How”由触摸屏接收为输入,并且显示在输 入字段2130中,随后是光标2140,光标2140可以是垂直线(如所示 那样)或任何其它形状(例如上述下划线)。预测器部分地基于针对当 前词内的光标2140的当前位置(其处于当前词的第一字符位置中,如 输入字段2130所示)的所接收到的输入来确定一个或多个已生成字符 集合2560。在所示示例中,预测器预测在正输入的句子中的下一词, 其中,显示已生成字符集合2560“is”、“are”和“many”。

图27示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符集合“It is ab”由触摸屏接收为输入,并且显示在 输入字段2130中,随后是光标2140,光标2140可以是垂直线(如所 示那样)或任何其它形状(例如上述下划线)。预测器部分地基于针对 当前词内的光标2140的当前位置(其处于当前词的第三字符位置中, 如输入字段2130所示)的所接收到的输入来确定一个或多个已生成字 符集合2560。在所示示例中,显示已生成字符集合2560“about”和 “absolutely”。显示比分区更少的已生成字符集合,意味着仅两个预 测存在,或预测因寻求将已生成字符集合与已经分配给另一已生成字 符集合的分区关联的冲突而耗尽。

图28示出具有虚拟键盘2120和输入字段2130的用户界面屏幕 的另一示例。字符集合“It is about to”由触摸屏接收为输入,并且显 示在输入字段2130中,随后是光标2140,光标2140可以是垂直线(如 所示那样)或任何其它形状(例如上述下划线)。预测器部分地基于针 对当前词内的光标2140的当前位置(其处于当前词的第一字符位置 中,如输入字段2130所示)的所接收到的输入来确定一个或多个已生 成字符集合2560。在所示示例中,预测器预测在正输入的句子中的下 一词,其中,显示已生成字符集合2560“take”、“start”和“be”。

应理解,图21至图28的实施例以促进使用并且选择预测作为输 入的方式提出了在显示最高排序的预测与显示预测之间的折中。虽然 将总是显示最高排序的预测,但其它所显示的预测可以不表示下一最 高排序的预测。虽然较低排序的预测可能不是最高排序的预测,但预 测仍然是最高排序的预测,所显示的预测位于所设置的位置处,而不 是基于后续候选输入字符而在虚拟键盘2120周围移动。这样促进了使 用并且选择预测作为输入,而不是用户键击出整个词并且忽略预测, 由此节省时间和处理周期并且促进预测性文本输入解决方案。

如上所述,用户可以使用手指或手写笔来滑动已生成字符集合以 输入该已生成字符集合。与之对比,可以通过使用手指或手写笔在虚 拟键盘2120中键击各个键来输入单独字母。触摸屏使用触摸事件的移 动和持续时间在键击事件与滑动事件之间进行区分,其细节是本领域 公知的,无须赘述。虚拟键盘2120中的每个键以及要显示的每个已生 成字符集合2560在触摸屏上具有关联目标区域。与每个已生成字符集 合关联的目标区域典型地是相同大小的,或大于所显示的已生成字符 集合。用户仅需要在所显示的已生成字符集合上或其附近滑动以输入 已生成字符集合。这允许通过创建相对大的可访问目标区域来相对快 速输入已生成字符集合,由此节省时间和处理周期。在一些示例中, 可以仅通过检测在所显示的已生成字符集合处或其附近在特定方向上 的滑动来输入已生成字符集合。在一些示例中,特定方向是“向上”, 从而仅向上滑动可以输入已生成字符集合。在一些示例中,当滑动具 有与所显示的已生成字符集合(其可以相同于或大于所显示的已生成 字符集合)关联的目标区域内(例如在图21中在所显示的词“Every”、 “Ecuador”或“Economy”内)的初始接触点时,滑动处于所显示的 已生成字符集合处或其附近。

应理解,无论是否由行还是列限定,上述实施例中的虚拟键盘 2120的分区都与虚拟键盘2120的键的行和列不一致。在其它实施例 中,虽然虚拟键盘2120的分区可以与虚拟键盘2120的键的行和列一 致,但由于可能通过弄乱用户界面而减少虚拟键盘2120的键的可见性 和/或预测的可见性,因此其典型地并非是优选的。

虽然上述实施例教导行或列所限定的虚拟键盘2120的分区,但 其它配置是可能的。例如,分区可以布置在二维数组(例如列的行的 直角数组)中。虽然这可能增加虚拟键盘2120内可以显示的预测的数 量,但其可能通过弄乱用户界面而减少虚拟键盘2120的键的可见性和 /或预测的可见性。

图29以流程图形式示出根据一些实施例的方法2900。方法2900 可以通过处理器(例如主处理器102)而得以实现,并且存储在有形 计算机可读介质(例如硬驱、CD、DVD、闪存等)上。在块2902, 处理器接收字符输入。在块2904,处理器生成预测输入字符集合。预 测输入字符集合与后续候选输入字符对应。

在块2906,最高排序的预测输入字符集合分配给与具有最高排序 的已生成字符集合中的后续候选输入字符关联的虚拟键盘2120中的 分区。如上所述,与后续候选输入字符关联的分区典型地是已生成字 符集合的后续候选输入字符所处的分区(即目前所描述的实施例中的 行)。预测输入字符集合与后续候选输入字符对应。

在块2908,确定下一最高排序的字符集合。在块2910,确定与 所述下一最高排序的字符集合相关联的分区。如果所确定的分区尚未 分配给已生成字符集合(判决块2912),则所确定的分区分配给下一 最高排序的字符集合(块2914)。如果所确定的分区已经分配给已生 成字符集合(判决块2912),则确定下一最高排序的字符集合(块 2908)。

在判决块2916,确定是否仍然未分配虚拟键盘2120中的任何分 区,如果是,则确定是否任何预测输入字符集合剩余。如果是,则虚 拟键盘2120中的至少一个分区是未分配的,或下一最高排序预测输入 字符集合存在。然后确定所述下一最高排序的字符集合(块2908)。 如果否,则已经分配了虚拟键盘2120中的所有分区,或下一最高排序 预测输入字符集合不存在。然后,分配给虚拟键盘2120中的分区的预 测输入字符集合显示在预测输入字符集合中的后续候选输入字符附近 的位置处,即在分配给虚拟键盘2120的分区的虚拟键盘2120的区域 中。

虽然图29中未示出,但用户可以使用手指或手写笔来滑动已生 成字符集合以输入该已生成字符集合,如上所述。与之对比,可以通 过使用手指或手写笔在虚拟键盘2120中键击各个键来输入单独字母。 在一些示例中,所述方法结合方法1700和图17如上所述继续块1750 和1760(未示出)的操作。在块1750处继续,如果处理器检测到未 插入标点,则所述方法重新开始于块2110。如果标点待插入,则所述 方法继续到块1760,其中,删除<SPACE>字符并且适当的标点加入到 输入字段。在块1760之后,所述方法在块2110重又开始。

虽然在预测词中的下一字母的情况下描述了方法2900,但所述方 法可以适用于预测下一词中的下一字母。

虽然至少部分地关于方法而描述了本发明,但本领域技术人员应 理解,本发明还针对用于执行所描述的方法的各方面和特征中的至少 一些,无论其通过硬件组件、软件或二者的任何组合的方式还是通过 任何另外方式。此外,本发明还针对包括用于执行在此所描述的方法 的存储在其上的程序指令的预先记录的存储设备或其它相似计算机可 读介质。

在不脱离权利要求的主题内容的情况下,可以通过其它具体形式 来实施本发明。因此,所描述的示例实施例被看作在所有方面仅是说 明性而非限制性的。本发明意图覆盖并且包括技术的所有合适的改变。 因此,本发明的范围由所附权利要求而非前面的描述来描绘。落入权 利要求的等同物的意义和范围内的所有改变意图被包括在它们的范围 内。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号