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通过两种途径使用多点触摸支持虚拟键盘:
- 使用组合键。比如你可以在按住Shift的同时按h键输入大写的H,而同样的操作在Android上只能先按Shift,松开后再按h;
- 双拇指同时输入而不丢字。很快地用左手输入t,右手输入o,iPhone上会打出to,而Android上会丢一个字母。
Android目前仅有HTC Hero支持多点触摸。
总结
虚拟键盘的成败取决于细节。不是单个,而是所有这些特性让iPhone在虚拟键盘上胜过Android。无数小变化带来真正的巨变。Apple很显然是花了大把时间处理好每个细节(呃,除了那个Ducking字典),而Google目前在这方面是只求拥有,不求与iPhone比肩。
不过我毫不怀疑Android的虚拟键盘将在未来得到提升,并期待着他们的表现。
32 条评论了已经
Trackbacks/Pingbacks.
发表评论
字体为 粗体 是必填项目,邮箱地址 永远不会 公布。
允许部分 HTML 代码:<a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>
URLs(网站链接)必须完整有效 (比如: http://www.ifanr.com),所有标签都必须完整的关闭。
超出部分系统将会自动分段及换行。
请保证评论内容是与日志或 Blog 内容相关的,灌水、攻击性或不恰当的评论 可能 会被编辑或删除。



































这个文从内容到表达都是一流的logout真是快手!
回复
android已经可以实现输入数字之后自动切换到字母状态了 而且输入法一直在进步
不过速度没iphone快倒是真的
回复
长期都被E6的虚拟键盘折磨
回复
确实是好文章。。
回复
不过,HTC touch input的输入法,取代android本身系统原有的虚拟键盘,已经对G1、G2等的虚拟输入键盘的很多方面有很大提升了。各位可以试试看,按原文的话来说,基本可以和iphone的比肩了。
回复
iphone的西班牙语输入很烂,西语中常见的上标都没有一个专门的按键。打个ñ,居然要长按n才行
回复
^_^ 上榜了, 呵呵, 不过我的推特链接错了:
http://www.ifanr.com/Twitter.com/lordhong
你们前面忘记加http://了…变成ifanr.com内部链接了 Orz…
这篇文章相当不错! 买Magic/G2的朋友一定要慎重!
回复
翻译的真好, 还加入了自己的看法和以前的分析, 大爱~~~~ ^_^//
回复
那个fucking的截图是什么twitter客户端?
回复
对于按键提示的时间,两个系统可能自己不同的考虑。Android 确实是故意的,如果熟悉了这个键盘,打字速度够快了,提示反而是多余的。另外,研究一下HTC输入法和Google拼音,就发现又有不同之处
回复
android的好处在于,我们总有不同的输入解决方案可用,比如最新的TouchPal,可以自动根据输入的按键组合自动判断正确的键,彻底解决按键必须1对1的问题,负责的说,这个输入法让我在HTC MAGIC上的输入速度是我在iphone上的2倍,谢谢!
回复
真是好文!
android平台前几天已经推出了touchpal输入法,解决了android上没有T9输入法的问题,而google输入法昨天也进行了更新,对android平台的输入法前景相当看好,期待国内诸如点讯,A4,搜狗等品牌的介入
回复
HTC输入法的英文输入还是不行。
Touchpal确实好多了,Android机型的小屏幕在竖屏时更适合使用类似Suretype的按键排列
回复
Android的好处在于开放,你不喜欢系统的虚拟键盘——换掉它!比如楼上诸位提到的Touchpal。
而iPhone呢?你永远只能按照苹果的方式去做事情,不管是好的,还是坏的。
回复
真的是用心使用手机,用心体会,用心构思,最后用心写作才能出炉的极品评测啊。我还没用过MAGIC,不过确实觉得IPHONE这些细节太令人惊叹了。
回复
以前自己想到了物理键盘和触摸屏的某些因素,如触感,声音提示等,但与这篇文章的专业和对细节的把握上比,自己的认识还很浅. 这篇文章真的水平很高.
回复
这篇怕是ifanr评论最多的一篇文章了,好文章确实让人喜欢呢。
回复
不错,很精彩,有这样的竞争好哇。
回复
android的开放让人期待它的不断创新改进
回复
3天时间习惯sogou的T9键盘
现在的输入速度不比以前N72上的A4慢
想到之前用的8320,没有好的输入法真是浪费了全键盘啊
回复
Gphone多好啊,什么都可以有变化,不喜欢可以开发新的,比如输入法,现在已经出了很多输入法了,像搜狗,不知道方便多说倍。iphong就不同了,不喜欢也得硬着头皮用
回复
精彩!作者&译者!
回复
虚拟键盘是垃圾,期待全键盘的android
回复
细致入微而且十分严谨的评论,不过Android的优势在于开放性,有大把的第三方输入法可以选择
回复