什么样的图标更具有可用性

作者:hciobserve 来源:视觉中国 时间:2007-10-16 17:47:00 

作为WIMP(Window/Icon/Menu/Pointing Device)界面设计的关键部分,图标在人机交互设计中无所不在。随着人们对审美、时尚、趣味的不断追求,图标设计也不断花样翻新,越来越多精美、新颖、富有创造力和想像力的图标充斥着我们的视界。可是,从可用性的角度讲,并不是越花哨的图标越被用户所接受,图标的可用性要回到它的基本功用去思考。

图标的功用在于建立起计算机世界与真实世界的一种隐喻,或者映射关系。用户通过这种隐喻,自动地理解图标背后的意义,跨越了语言的界限。但是,如果这种映射关系不能被用户轻松并且准确地理解,那么这种图标就不应是好的图标。因此,图标的设计应该遵守以下的原则。

图标的可用性原则一:图标指向的映射关系应该尽可能的直接、简单。

可能与我们的直觉相反,一些研究显示图标界面与文本界面的比较中,并没有体现出明显的优越性,一个主要原因就是文字和意义的映射是直接的,而图标与意义的映射却不一定是直接和明显的。

在坏的图标设计中,用户需要花费几秒钟甚至更长的时间去猜测图标代表的意义,而且还很可能猜错,错误的理解导致错误的操作,错误的操作导致糟糕的结果,这决不是美妙的用户体验,即便从美学角度讲那个图标可能是上佳的艺术作品。

“直接”的意思是:不要绕弯。图标展现的视觉表象与其背后的意义只需要很短的意义路径即可连结。譬如对于“剪切”操作,使用“在文稿上打×”的图标形象比“剪刀”的图标形象更易理解,因为前者与剪切操作有更短的意义路径,尽管“剪刀”图标显得更加生动活泼。

认知心理学家提出过一个激活扩散模型,就是在人的知识和概念体系中,当一个概念被加工或受到刺激时,该概念结点就产生激活,然后激活与该结点直接相连的多个连结,并继续向四周扩散。与当前概念在概念网络上的连结关系决定了其被激活的强度。这种连结关系取决于人的知识体系的组织架构(即两个概念是否属于同一类别)和概念同时出现或使用的频率。

例如在人的知识和概念架构中,在纸质文稿上写字和在电脑上写字都属于撰写文档的类别,那么当“在文稿上打×”的图标形象出现时,被试就会快速地联想到在电脑上进行剪切操作。而“剪刀”的视觉形象最易归属到“衣服裁剪”或“手工劳动”这样的类别中去,因此映射关系具有教长的路径和较弱的连结强度。因此在图标设计中,设计师应该仔细考虑或者直接去调查用户的知识体系,找到最短的概念连结。

图标的可用性原则二:每个图标指向的映射关系应该是唯一的

这个原则的意思就是,不要让图标产生歧义。想像一下,一个“飞旋的车轮”图标,它代表了什么?也许设计者的本意,是要用车轮的移动来象征电脑中文件的移动操作。可是,用户也许猜测出了其他十几种对应关系,比如一款3D赛车游戏。这个原则其实还有一个推论原则:

不要使用过于复杂的图标。

因为图标的视觉元素越多,那么其意义指向的可能性就越多,用户越有可能从各种各样的角度去解读,那么该图标的可用性就可能越差。

标签:图标,设计
0
投稿

猜你喜欢

  • django 解决manage.py migrate无效的问题

    2021-08-18 02:28:51
  • Python实现bilibili时间长度查询的示例代码

    2022-11-24 15:52:16
  • python闭包、深浅拷贝、垃圾回收、with语句知识点汇总

    2023-09-11 13:20:31
  • Pandas提高数据分析效率的13个技巧汇总

    2022-09-19 14:23:25
  • 13个最常用的Python深度学习库介绍

    2023-08-04 03:08:09
  • Python流行ORM框架sqlalchemy安装与使用教程

    2022-10-20 06:12:20
  • MySQL高可用架构之MHA架构全解

    2024-01-25 03:15:23
  • PyCharm+PyQt5+QtDesigner配置详解

    2023-09-11 12:40:03
  • CentOS+Nginx+PHP+MySQL详细配置(图解)

    2023-11-24 03:04:13
  • Python网络编程之TCP与UDP协议套接字用法示例

    2023-12-07 06:34:45
  • 解决pycharm中导入自己写的.py函数出错问题

    2023-07-09 12:12:05
  • python书籍信息爬虫实例

    2023-11-17 11:15:49
  • Golang爬虫框架colly使用浅析

    2024-02-06 23:28:06
  • 很全面的MySQL处理重复数据代码

    2024-01-24 14:26:45
  • python udp如何实现同时收发信息

    2023-12-16 10:06:33
  • JavaScript设置获取和设置属性的方法

    2024-05-22 10:35:34
  • Python一行代码实现自动发邮件功能

    2021-04-06 06:04:38
  • unittest+coverage单元测试代码覆盖操作实例详解

    2021-10-09 09:32:24
  • 使用cmd命令行窗口操作SqlServer的方法

    2024-01-17 06:13:13
  • python散点图实例之随机漫步

    2021-01-19 21:05:58
  • asp之家 网络编程 m.aspxhome.com