虚拟键盘深入对比评测:iPhone VS Android

公司

2009-08-12 20:56

By Lukas Mathis from ignorethecode.net | Logout 译,转载请注明 ifanr.com 译文链接。

Lukas Mathis 的这篇细节评测深入分析了 Android 和 iPhone 在软键盘上的差距,系统总结了差距背后的原因。感谢lordhong在 Twitter 上的推荐,这里顺便推荐一下他的 Blog,如果你还不知道的话。

虚拟键盘的优点在于可以让大屏设备保持一个苗条的身材。虚拟键盘缺乏物理键盘在输入手感上的先天优势,只能敲击屏幕上的一堆像素。为了让用户能够与这种系统进行有效的交互,它必须做到完美,需要采用一些小技巧帮助用户避开这种输入机制的固有缺陷。

对比 iPhone 和使用 Android 系统的 HTC Magic (G2),就会发现虚拟键盘能够造成的问题以及应对之策。在 iPhone 上打字——特别是打英文——非常顺手,也许比物理键盘上更好。在 HTC Magic 上做同样的事则非常恼人,错误连连。请注意,其中有些问题是由 Magic 本身而非 Android 系统所造成。

尺寸

HTC Magic 和 iPhone 有着相同的像素面积:

整个键盘,乃至每个按键的像素面积都基本相同,不过 Android 在空格键左右适宜的添加了逗号和句号:

但 HTC Magic 屏幕的物理长宽均为 iPhone 的 90%。这听起来或许无甚大碍,但实际上对可用性影响很大。下图是物理显示面积对比:

接下来轮到键盘,同样是物理显示面积对比:

哪怕长与宽仅差 10%(之所以不用 19% 左右的面积差差距,是因为在这方面宽度远比长度更重要),HTC Magic 的键盘还是要小许多。这带来了两个问题:

首先,这降低了按键准确率。我用 iPhone 时很少按错,用 Magic 时常常按错;

其次,被手指遮挡住的部分所占键盘比例更大。

这让观察自己所按按键更为困难。不得不承认,我的手比较大,有些人可能会更喜欢 HTC Magic 稍小的屏幕,但哪怕是他们也可以在更大的屏幕上实现更精准的点击。

注意力

使用物理键盘时,用户的注意力集中在屏幕显示的文字上。没必要看着键盘,因为按键不会移动,而且键盘的物理特性也确保了用户的手指定位。虚拟键盘就不同了。哪怕手指最细微的位移也可能导致错误点击。更有甚者,虚拟键盘本身就可以变化。在绝大多数情况下,虚拟键盘用户会将注意力放在键盘而不是屏幕所显示文字之上。

这就意味着误按时的字母提示必须明显,能让用户在只看着键盘的情况下也可以注意到。由于用户的手指挡住了按键,单纯高亮按键无法提供足够的反馈,现在两个系统的字母提示都在按键上方弹出:

不幸的是,iPhone 可以在按键瞬间显示出所按字母,但 Android 上有延时。一开始我怀疑这是硬件速度造成的延迟,但后来发现模拟器上也有延时,这只能是刻意而为。延迟是如此之严重,以至于打快了以后,根本就不弹出字母提示了。

演示视频下载,体积很小

这个小设置在实质上将字母弹出提示无效化,强迫用户不断在键盘和文字输入栏之间不断移动注意力焦点。这减缓了我的打字速度、不断打错单词、字母。

速度

尽管此前 iPhone 的键盘速度并不像 3GS 上这么好,但从按键到出现字母绝对没有延时。iPhone 显示字母的速度可以和你打字一样快,Android 做不到,这就带来了一些问题:

首先,你常常得打上几个字母之后才能看到单词,Magic 的速度就是跟不上。

其次,Magic 有时会在用户已经开始打新的单词以后纠正之前的单词。打完单词后的变化往往并不明显,因为延时太长。结果就是你常常看不到自己真正打出来的词,而且即便你打对了,Magic 也有可能在你打完很久以后 “纠正” 它。

自动纠正

自动纠正是 Android 胜过 iPhone 的地方。iPhone 仅向每个单词推荐一个纠正,而 Android 提供好几个,从用户尚未打完整个单词之时就开始推荐。

打长单词时,往往刚打了几个字母就看到正确的单词出现在列表中。不过我不确定这在效率上到底是不是有益无害的,因为你把少打字省下的时间花在了查看推荐单词列表上,但这样在感觉上确实更好。

iPhone 会自己添加你使用频繁的词,而 Android 可以手动添加单词。和 iPhone 一样,Android 也有绕开你想打的词的趋向,但你可以在 Android 上通过手动添加单词修复这种问题。(iPhone 上就要另辟蹊径,新建一个叫 Fucking 的联系人 )

两款手机都会自动为 can’t 等词添加’。和 iPhone 不同的是,Android 不会坚持将所有的 its 替换成 it’s。这两个系统也都有标点符号快捷键,特别是两次空格会按照英文输入习惯自动变成句号+空格。

按键动态缩放

iPhone 会自动调整不可见的 “触摸区域” 来方便你打字。David Pogue 是这么描述的。

尽管无法用眼睛看到,但 iPhone 键盘的按键面积是实时变化的。就是说软件会根据概率自动增大特定按键的 “触摸区域”。

举个例子,如果你打了 N,那么下一个字母不太可能是 H,但很可能会是 G。iPhone 就会相应的增减这两个按键的触摸区域。如果你打了 N 再按到 G 和 H 之间的间隔,iPhone 就会判断你想打的是 G,因为 NG 是英语里的一个常用字母组合,而 NH 并不常用。(住在 New Hampshire 的人除外,该地的缩写是 NH)。

这常常会致使你在输入 iPhone 不支持的语言时出现错误,但对它支持的语言来说,这确实颇有助益。就我目前的观察来看,Android 似乎根本没有这种按键缩放——在用了不支持这种功能的软键盘之后,你才知道自己到底有多么依赖它。

译注:这样的设计贯穿与 iPhone 的 UI,KKK 此前的触不到的按钮对此也有评述。

语言支持

iPhone 的虚拟键盘可以快速切换所用语言,并会自动切换到该语言的纠正用字典。而 Android 无法快速切换键盘语言设置,即便设置内切换了 Locale 也不会更换软键盘键位。(译注:谷歌、HTC 等输入法可以直接快速切换输入语言,但这样就替换了系统软键盘,而这两个输入法的英文输入体验远不如系统软键盘)

两个系统都可以通过长按字母键输入大/小写,也都可以切换到数字和特殊符号的第二键盘。用户可以在 iPhone 上用手指从 “数字键盘” 键划至特定的数字或符号,它会在输入该数字/符号后自动切回普通键盘。Android 没有这个快捷操作。

横向键盘

两个系统均提供横向键盘。横置手机会自动切换到宽屏虚拟键盘。增加的宽度可以显示更大的按键,让打字更为容易。横向键盘在两个系统上都需要软件的支持。事实上,有些 Android 程序对虚拟键盘很不友好,弹出虚拟键盘时表现很奇怪。这可能是因为它们本为 G1 这个有物理键盘的手机而设计。但我估计这些程序最终都会提供升级,包容虚拟键盘。

多点触摸

iPhone 通过两种途径使用多点触摸支持虚拟键盘:

  1. 使用组合键。比如你可以在按住 Shift 的同时按 h 键输入大写的 H,而同样的操作在 Android 上只能先按 Shift,松开后再按 h;
  2. 双拇指同时输入而不丢字。很快地用左手输入 t,右手输入 o,iPhone 上会打出 to,而 Android 上会丢一个字母。

Android 目前仅有 HTC Hero 支持多点触摸。

总结

虚拟键盘的成败取决于细节。不是单个,而是所有这些特性让 iPhone 在虚拟键盘上胜过 Android。无数小变化带来真正的巨变。Apple 很显然是花了大把时间处理好每个细节(呃,除了那个 Ducking 字典),而 Google 目前在这方面是只求拥有,不求与 iPhone 比肩。

不过我毫不怀疑 Android 的虚拟键盘将在未来得到提升,并期待着他们的表现。

登录,参与讨论前请先登录

评论在审核通过后将对所有人可见

正在加载中

关注电子阅读、任何有趣的设备、IC 以及“历史的草稿”,相信移动设备与互联网的结合正促成近百年来最重要的一次变革。

本篇来自栏目

解锁订阅模式,获得更多专属优质内容