用户界面设计中“状态”和“动作”的表达
作者:Tony Lee 来源:aliued 发布时间:2011-01-06 12:36:00
一、问题引发思考
前阵子与同事探讨一个小需求时又遇到了按钮表示“动作”和表示“状态”间矛盾问题。想想这个问题多年前已经开始讨论了,所以在此整理一下思路,与大家共享。
「图1」
具体案例是这样的:如上图所示,在“启用”和“停用”搜索定制功能时,这个按钮到底是表示“状态”还是表示“动作”呢?简单的说,上图中 1表示当前是停用状态,还是表示点击后为停用操作呢?答案显然是不清晰的。
怎样能够清晰的表达两者的差异,减少用户的误解呢?我们首先要从“动作”、“状态”的定义和两者的关系入手。
二、什么是动作,什么是状态
动作是指具有一定动机和目的并指向一定对象的运动。
状态指人或事物表现出来的形态。
结合来讲,动作是促使人或事物改变某一状态的运动,而状态是动作造成的结果表现。因此两者经常是紧密关联的,有时甚至是互为条件的。
比如“操作收音机”这件事,我需要扭动旋钮或按键等“打开”的动作来打开收音机,当动作完成后收音机的状态是“打开的”。而“关闭”收音机这个动作的前提,是一个“打开的”状态的收音机。
”听起来好复杂阿!“很多人都会这么认为。为什么我们在生活中天天面对类似的事却很少有这样的感觉呢?
下面来看看生活中的例子我们或许就能理解了。
三、生活中的例子
1、电灯开关
「图2」
单控开关,我们最常见的开关之一,设计极其简单,按下一边是开,另一边是关。至于到底那边是开那边是关,没有几个人会特别关心。因为我尝试两次总会作对操作,几乎没有什么成本。人们不会感觉什么不爽。
当然,现在还有更好的设计。
「图2」
2、Ipod HOLD
「图3」
苹果的Ipod播放器的按键锁定功能“HOLD”。当开关拨动到“HOLD”字样一边时,左侧便会露出红色。而拨动到另一边是没有颜色的。巧妙的运用了色彩对人们心里特征的影响区分出了hold的状态。
3、显示器
「图4」
显示器电源开关,又一个“动作”和“状态”结合的应用。使用按钮突出的形态,和开关的图形表现来表示可执行的动作(这里按下去是用来开关的),使用背景灯的暗与亮来表示开关状态(灯亮表示现在是开的状态)。
类似的应用非常多,我们可以看到其中具有的特点是:1、可以触摸、按动(拨动)的按钮 2、色彩的区分 3、有的还有明显的位置差异以及标识。


猜你喜欢
- 本文实例讲述了Python创建xml文件的方法。分享给大家供大家参考,具体如下:这是一个使用ElementTree有关类库,生成xml文件的
- 小白尝试写任意文件读取poc我是一个小白,完全不懂Python,但是Python在渗透中往往是一个重要的角色。有一个CSDN百万大佬写了这样
- 在python2.x中 ,异常是这样的处理的,异常基类后面加一个逗号“ ,” 然后跟着异常类型import tracebackt
- 什么是锁锁的本质,就是一种资源,是由操作系统维护的一种专门用于同步的资源比如说互斥锁,说白了就是一种互斥的资源。只能有一个进程(线程)占有。
- 导语因为疫情无奈只能在家宅了好多天,随手玩了下自己以前做的一些小游戏,说真的,有几个游戏做的是真的劣质,譬如 flappybird 真的让我
- 1.爬虫是什么所谓爬虫,就是按照一定的规则,自动的从网络中抓取信息的程序或者脚本。万维网就像一个巨大的蜘蛛网,我们的爬虫就是上面的一个蜘蛛,
- atan 和 atan2 都是反正切函数,返回的都是弧度对于两点形成的直线,两点分别是 point(x1,y1) 和 point(x2,y2
- 如何分析程序运行所需时间及cpu的使用率?使用shell内置的time指令最常见的方式便是linux中内置的time指令,通过time go
- 不废话,直接上代码Python3.6签到代码,只需修改url,账号,密码即可,此处是登录时无验证登录,有验证码的自行补充# -*- codi
- 1 前言前面已经讲了很多次要进行数据存储,终于在上一篇中完成了数据库的设计,在这一篇就开始数据的存储操作,在数据存储的这个部分,会将之前抓取
- 方法一 delete from test; alter table `test` auto_increment=1 (好处,可以设置AUTO
- 模块概述如果说模块是按照逻辑来组织 Python 代码的方法, 那么文件便是物理层上组织模块的方法。 因此, **一个文件被看作是一个独立模
- 本文实例讲述了Go语言结构体定义和使用方法。分享给大家供大家参考。具体分析如下:一个结构体(struct)就是一个字段的集合。(而 type
- python3.8新功能相关文章Python 3.8 新功能大揭秘【新手必学】 Python 3.8 新功能来一波(大部分人都不知
- 推荐系统MostPopular算法的Python实现MostPopular 算法的 是指对每个用户都选择出当前流行度最高的Top-K个物品进
- 使用shell调用一个python文件,并向shell中传入参数,举例如下:p1='wang'p2='shuang&
- 前言本文将讲述怎么通过 MySql 的日志 binlog 文件进行数据恢复。通过已备份数据 加上 binlog 文件恢复上次备份到删除之间的
- 本文记录了Linux系统(CentOS)安装Python,供大家参考,具体内容如下Python(Linux) 下载地址操作系统:Centos
- 发现问题近期通过 mysql 命令连接 mysql server 的时候, 出现了不能输入中文的现象, 如下所示:mysql> SEL
- 最近有提关于下拉选项过多的时候,希望输入关键词,可以搜索内容的需求,但是之前项目太赶,所以也就没有来得及做,因为希望用原生js写一些内容,所