我喜欢使用iPhone,但我对它的一个设计不敢苟同:苹果始终坚持,设备的正面永远只能有一个按键。

我还买了一个Kindle Fire,它更离谱,一个按键都没有!我完全赞成,任何小器具的正面都应该在明显的位置上至少有一个“耶稣把手”一样的按键。让我好奇的是:为什么亚马逊决定不为Kindle Fire设计任何按键,而其他型号的Kindle设备都有一个“Home”键?亚马逊常把设备的第一代产品做得比较粗糙,这是有前科的。我相信他们会在后续的1~2代之内把“Home”键加回来。不过,这东西才卖199美元,我愿意为他们的疏忽买单。至少在眼下,总体上来说我对它还是认可的。

“耶稣把手”的英文是“Jesus Handle”,原指汽车车窗上方的把手,一般是在车速很快或道路颠簸的时候供乘客抓取以保持平衡的,看起来像在祈求耶稣的保佑,因此得名。口语中也常称作为“oh shit handle”,因为人们在这种情况下常常会脱口骂出“oh
shit!”——译者注

甚至苹果也做过没有任何按键的设备,比如第3代的iPod Shuffle。你必须在耳机上双击或连按3次才能完成像跳到下一首歌这样基本的功能。顺便说一下,这也意味着你的老耳机都没用了,至少跟这款iPod是不兼容的。还好,第4代的iPod Shuffle迅速纠正了这个错误,物理按键重新回归到了设备上。第5代设备采用了触摸控制——这是意料之中的。

微软也好不到哪里去!Xbox 360的无线麦克风有时让我纠结不已。(要不然,这玩意儿就太棒了!)它只有一个电源开关和一些指示灯。

应该承认,这款麦克风的大部分功能都挺好用的,拿起来就可以唱(尽管我五音不全)。但是我也得承认,每次让它与Xbox同步的时候,我都有点不知所措,它让我很费解……微软发布了一篇在线说明文档:“How to set up and use your Xbox 360 Wireless Microphone”(如何设置并使用Xbox 360无线耳机)。你去看看,这能怪我吗?

当你打开麦克风时,内置的指示灯会闪烁,以表示麦克风当前的状态,如下:

·       电源接通:绿灯闪烁,频率为每秒一次;

次;

·       连接完成:蓝灯闪烁,然后停止。

当电池电量不足时,内置的指示灯会闪烁,以表示电池充电的状态,如下:

秒一次;

·       电量临界点:琥珀色的灯闪烁,频率为每秒一次;

当你的麦克风超出了Xbox能够接收到无线信号的范围,绿灯会每秒闪一次。如果有些游戏支持的话,这些指示灯还能一起变换颜色。

如果我们都能赞成“没有任何按键是一个糟糕的设计”,我觉得“单键设计是有问题的”也便顺理成章了。我在使用iPhone的单键时碰到了麻烦,就像使用苹果的单键鼠标一样——可能在一开始觉得还行,但久而久之,就会造成功能的“过载”,甚至达到荒诞可笑的地步。让我们来看一看Andrew Durdin为iPhone的“Home”键画的功能示意图——单单一个按键要控制多少东西啊!



iPhone只有一个“Home”键。哇,太方便了!你可以这么用它:

  • 单击;
  • 双击;
  • 连按三次;
  • 单击并按住;
  • 单击,等一下,再单击。

当然,所有这些操作在不同的场景下都有不同的功能。值得一提的是,我特别喜欢通过双击调出活跃应用的列表,但我常常误操作,结果却进入了主页面。我在iPhone上装了非常非常多的应用,以致于我不得不通过搜索来导航。也就是说,我很依赖搜索,但为了调出搜索页面,我必须先单击进入默认的主页面,等一下,再单击。有时候我按的时间太长了,被系统识别为“单击并按住”操作,结果调出了语音搜索服务……我对它可一点都不感冒!

本文写成于2012年2月。时至今日,苹果公司已经在iOS
7里改进了调出搜索框的操作方式。——译者注

我现在都害怕使用iPhone的“Home”键了,因为它“让我思考”。我很多时候都在误操作。事情本不应该是这样的!

读到这,你可能想我会“弃暗投明”,转投WindowsPhone或Android的阵营,并且直指它们的高明之处。我不敢肯定它们是否真的高明。事实上,它们都有自家难念的经。

如果设备只有一个按键,那个按键应该发挥什么作用最起码还是清楚的,是吧?也许吧!但也未必……(请回过去再看一眼iPhone的“Home”键的功能示意图。)

但有一点我是认可的:像网络浏览器一样,Android和WindowsPhone上都明显地标出了“后退”键。我很多时候都拿iPhone来上网。互联网之所以强大,主要还是因为它的简单易用:内容陈列得清清楚楚供用户点击,还有一个大大的像汽车喇叭一样的“回退”按钮,很明显地摆在那里,让你深入通幽曲径也永不迷失;一切都是那么有条理。没错,浏览器也有一个“Home”按钮,但最新版的Chrome,Firefox和IE无一例外地把它边缘化了,转而极大地突出了“后退”按钮。尽管我尚且认为,不是所有的手机应用都应该迎合互联网的行为方式,但互联网正越来越变成为一个善意的应用平台。“后退”按钮是一种用户界面范式,它对Web应用发挥着“清道夫”的作用。我强烈支持把它做成设备的一个硬键。

然而,一旦设备上有3个按键时,人们就又开始踌躇了。我按的键对吗?出现这种情况就不妙了。我甚至都不知道Android手机上那第3个按键是干嘛用的!我猜,我可能会喜欢用Windows Phone上的搜索键,但在增加一个新的按键之前,我更希望看到设备正面的两个按键能够得到协调、一致的使用。举例来说,如今的双键鼠标差不多已经成为行业标准了,我想它背后肯定是有原因的。(没错,有些鼠标还有一个“讨厌”的中键,但那不是必需的,有了它只是锦上添花而已。)

接下来,怎么解决单指操作的问题呢?其实,即使在触控设备上,一个手指似乎也是不够用的。久而久之,用户体验方面必然会出现古怪的“过载”:

个手指,你可以切换到别的应用——应用程序的设计师必须规避这些操作,以确保自己应用的合法输入方法不会跟系统级的手势“打架”。

使用这个功能之前,需要将“设置 |通用 |多任务手势”选项打开。——译者注

还有更糟糕的:手指从屏幕顶部向下滑动,这个操作可以打开“通知中心”——一个含有日历约会、天气等信息的窗口。单指的垂直运动很常用,很多应用都期望获取这样的输入。《Flight Control》和《Fruit Ninja》(水果忍者)就是两个典型的例子。在玩游戏的时候一不小心打开“通知中心”,这种事时有发生。垂直方向上的滑动在任何画图程序里也是很常见的。应用设计师需要倍加小心、允许这些控制吗?很显然,必须的。

现如今,“过载”在触控的场景里已经无处不在了。除非你只是拿一个平板作最简单的用途,否则你将免不了要“双击”、“单击并按住”、“双指滑动”等等。

苹果在追求简单和简洁设计方面做得极其出色,但我也常常想,他们做过头了,特别是在一开始的时候。比如,第一台Mac机居然没有光标键。所有的问题都是设计问题,听起来有点主观,但就像“金发姑娘”一样,我将坚持:奥秘之处在于让“汤”不要太凉(没有任何按键),也不要太烫(3个或更多的按键),而要刚刚好。如果我在按下“Home”键的时候对其后果无须思考太多,我肯定会更喜欢用iPhone的。(要知道,那个键每天都会被按上百次哦……)

“金发姑娘”出自一则童话故事《金发姑娘和三只熊》。——译者注

Jeff Atwood质疑iPhone的单键设计的更多相关文章

  1. 转:Jeff Atwood倾情推荐——程序员必读之书

    Jeff Atwood倾情推荐——程序员必读之书 英文版:<Code Complete 2>中文版:<代码大全(第二版)>作者:Steve McConnell译者:金戈  汤凌 ...

  2. 精美的 ( Android, iPhone, iPad ) 手机界面设计素材和线框图设计工具

    在制作界面原型的时候,如果有现成的界面基础元素可以使用的话,设计师就可以非常快速的完成原型的制作,能够节省大量的时间和精力.在这篇文章, 我向大家分享45套非常有用的 UI 和 Wireframe 套 ...

  3. Jeff Atwood倾情推荐——程序员必读之书

    英文版:<Code Complete 2>中文版:<代码大全(第二版)>作者:Steve McConnell译者:金戈  汤凌  陈硕  张菲出版社:电子工业出版社出版日期:2 ...

  4. MySQL主键设计

    [TOC] 在项目过程中遇到一个看似极为基础的问题,但是在深入思考后还是引出了不少问题,觉得有必要把这一学习过程进行记录. MySQL主键设计原则 MySQL主键应当是对用户没有意义的. MySQL主 ...

  5. 使用复合索引代替单键索引,来避免单键有null值的情况

    查看原表: SQL> select count(*) from t1; COUNT(*) ---------- 3229088 SQL> select count(*) from t1 w ...

  6. php : 单例设计演示

    单例 : 保证只有一个实例 <?php /* * 单例设计 */ // 单例: 只能"创造"出它的一个对象实例 class Single{ // 第一步: 私有化构造方法 p ...

  7. UI创意求助:手机贪吃蛇游戏方向控制键设计

    继上一片博文<做梦想起来的C#简单实现贪吃蛇程序(LinQ + Entity)>之后,尝试做一个手机版本,大部分的功能都已经实现了.但在贪吃蛇的方向控制设计上一直不太满意.由于手机界面的大 ...

  8. MySQL数据库主键设计原则

    目录 1. 主键定义... 5 2. 主键设计原则... 5 2.1 确保主键的无意义性... 5 2.2 采用整型主键... 5 2.3 减少主键的变动... 5 2.4 避免重复使用主键... 6 ...

  9. verilog实现的16位CPU单周期设计

    verilog实现的16位CPU单周期设计 这个工程完成了16位CPU的单周期设计,模块化设计,包含对于关键指令的仿真与设计,有包含必要的分析说明. 单周期CPU结构图 单周期CPU设计真值表与结构图 ...

随机推荐

  1. 离线合成联想到的--canvas合成水印

    前段时间做了功能模块:用户设置自定义勋章: 实现方式:前端把用户设置的昵称传到后台,后台根据不同用户等级,使用离线合成技术合成不同的勋章返回到前端: 方案算是实现了,但是有点坑就是,后台的离线合成没有 ...

  2. electron-vue 初体验

    注意事项 首先确保node和npm是最新版本 避免使用镜像(我淘宝镜像安装有报错现象) 避免window的一些坑 若上一项检查完成,我们可以继续设置所需的构建工具.使用 windows-build-t ...

  3. Parallel.For 平行算法 使用

    之前看到Parallel的用法,觉得很高深,很腻害,今天专门抽空研究了一下,发现还是很easy的. .NET Framework 4.0 新加的功能,所以4.0之前的无法使用哦. 下面介绍一下,Par ...

  4. day0203 XML 学习笔记

    day02, 03 1. xml语言和作用 2. xml语法详解 2.1 xml 语法声明 2.1.1 encoding 属性 2.1.2 standalone 属性 2.2 xml 元素(Eleme ...

  5. 实例演示如何在spring4.2.2中集成hibernate5.0.2并创建sessionFactory

    本文地址:http://blog.csdn.net/sushengmiyan/article/details/49388209 文章作者:苏生米沿 本文目的:使用spring4.2.2集成hibern ...

  6. 计算机网络之远程终端协议TELNET

    TELNET 是一个简单的远程终端协议.用户用 TELNET 就可在其所在地通过 TCP 连接注册(即登录)到远地的另一个主机上(使用主机名或 IP 地址). TELNET 能将用户的击键传到远地主机 ...

  7. cassandra 3.x官方文档(2)---架构解析

    写在前面 cassandra3.x官方文档的非官方翻译.翻译内容水平全依赖本人英文水平和对cassandra的理解.所以强烈建议阅读英文版cassandra 3.x 官方文档.此文档一半是翻译,一半是 ...

  8. python数据挖掘orange

    http://blog.csdn.net/pipisorry/article/details/52845804 orange的安装 linux下的安装 先安装依赖pyqt4[PyQt教程 - pyth ...

  9. springMVC源码分析--@ModelAttribute使用及运行原理

    这一篇博客我们简单的介绍一下ModelAttribute的使用和运行原理. 1.首先@ModelAttribute是使用在方法或者上的,当使用在方法上时其作用于本身所在的Controller,在访问C ...

  10. ejabberd编译更新脚本

    ejabberd编译更新脚本 (金庆的专栏 2016.8) 用rebar编译ejabberd源码,然后复制编译所得beam文件到ejabberd安装目录, 调用ejabberdctl热更新. call ...