日期:2014-03-20  浏览次数:20837 次

文章作者:姜伟 Email:jamewe@yahoo.com.cn QQ:355905 个人网站:it2media.nease.net。转载请联系原文作者

------------------------

  (二)、如何辨识和使用交互元素。
  下面分别就:交互场景、交互对象、交互方法和交互事件分别进行讨论。

  我们常把交互场景分为嵌入式、PC和服务器三种。嵌入式主要指使用小型液晶显示输出的设备,PC机主要指带有CRT、键盘、鼠标的个人计算机。服务器在多数情况下和PC机的交互设备差不多,但是用户的专业性要求方面往往有很大差距。

  我们主要针对PC机进行讨论。在国内PC机的主要操作系统就是windows,因此以windows为基准讨论交互对象。

  Windows下常用交互对象包括:
  1、 信息显示对象
  2、 命令响应对象
  3、 输入选择对象
  4、 范围限定对象
  5、 表格对象
  6、 系统对象

  信息显示对象有:标签、动画、即时提示、状态栏提示、进度条。
  名称 演示
  标签
  动画
  即时提示
  状态栏提示
  进度条
  信息显示对象主要用于软件向使用者提供反馈信息。

  命令响应对象有:按钮、菜单、分割条、超连接文本
  名称 演示
  按钮 常规 扁平 图形 按下 下拉 单选 多选
  菜单
  分隔条
  超连接文本
  命令响应对象主要用于响应用户的鼠标和键盘的命令。

  输入选择对象有:文本输入框、微调输入框、选择框、滑动条、页面选择
  名称 演示
  文本输入框 单行和多行文本输入 IP地址输入
  微调输入框
  选择框 滚动选择 下拉选择
  滑动条
  页面选择
  输入选择对象主要用于接收用户输入文字、选择已经设定好的选择等。

  范围限定对象主要有:群组和分割线
  名称 演示
  群组
  分割线
  范围限定对象主要用于从视觉上分开相互之间有逻辑区别的一个或者多个交互对象。

  表格对象外形看起来很象我们使用的表格而得名。

  用于显示和输入大量信息。

  系统对象包括:窗口、树列表、列表、系统信息栏
  名称 演示
  窗口
  树列表
  列表
  系统信息栏

  在熟悉了Windows的交互元素之后,我们来看交互方式和交互事件。

  交互方式有:键盘输入、鼠标滚动、鼠标点击、语音输入、笔迹输入、影像输入等。其中最常用的是前面三者。

  交互事件有:视觉提示、路径选择、声音提示等。路径选择就是当程序可能有多个分支的时候,要求用户确认进入哪一个分支。

  (三)、如何设计和使用交互逻辑

  在前面我们已经说过交互逻辑的三种情况。对于用户的天然逻辑是首先要遵守的。这个就是所谓的人性化的问题。比如从左到右从上到下,红色表示警戒绿色表示安全,低频率表示正常高频率表示非常等等。

  如果违反了用户的自然逻辑,可以通过前期的用户焦点小组和后期的用户测试检测出来。

  如果考虑到我们所处交互环境的特点-PC机、windows操作系统,那么还要注意的就是同Windows的操作习惯相配合。比如在中文windows下,按钮的快捷键是在按钮文字的后面,而英文版是在前面。

  首先要注意的就是键盘的逻辑。在Windows下的软件交互除非是不和其他任何应用一起运行,否则就要注意键盘的逻辑要按照windows下规范进行。请参考附录(一)中windows键盘定义。

  其次就是要注意鼠标的逻辑。现在windows下的鼠标基本都是双键的,中间带有滑动轮的也不在少数。对于单击、右键单击、双击的定义要和windows的当前设置相同,否则会给用户带来困惑。

  各个交互元素之间的逻辑,难以条条块块的讲清楚。这里介绍一下几个交互设计的原则,然后给出一些在交互设计中行之有效的方法。

  交互设计原则:
  1、 以用户为中心的原则
  2、 交互一致性原则
  3、 简单可用原则

  以用户为中心的原则不需多言:按照用户习惯的方式设计交互、提示和引导用户而不是教育用户、以用户的满意度为基本衡量标准。

  交互一致性的原则包含下面几个内容:
  设计目标一致。如果追求操作简单,那么就要贯彻始终。
  外观一致。如果追求视觉效果华丽,那么就尽量避免出现朴素的效果。
  行为一致。交互对象在相同的交互方法后产生的交互事件保持一致。

  简单可用原则包含下面的几个内容:
  简化界面元素。能够分类的就分类,能够隐藏的就隐藏。保持界面控制区域不多于40%,
  简化逻辑概念。Windows下流行的向导窗口就是一个很好的例子。
  从而使得交互更容易理解更容易控制。

  如果大而言之,交互设计中只有一种方法,那就是简化。这一点往往是软件开发者和使用者之间的最大分歧。程序开发者往往由于全盘了解软件的功能和架构,更加倾向于快捷和从开发角度看的合理性和逻辑性。