用户界面设计模式1.7表单:填空设计模式
问题总结
用户需要在系统中输入数据
示例
用法
当您发现自己为输入字段创建标签时使用,这些标签并不能真正解释输入字段的全部内容。
当您发现自己为输入字段创建长而复杂的标签时使用, 这反过来又使用户难以理解。
当您可能通过将输入字段放在一个句子中来表达其上下文时使用。
在填写输入字段时使用是必需的或强烈的赞赏。留下句子的部分未填充会造成用户的苦恼。
当您有一组相对较小的输入字段作为句子的一部分放置时使用。如果您有许多输入字段, 将它们放在一个句子中对用户来说似乎很烦人, 因为句子结构迫使用户读取所有句子, 并将所有输入字段放在这些句子的上下文中。
如果您有许多不需要填写的字段, 请不要使用。
解决方案
以句子形式对输入字段进行排序,输入字段为空白,由用户填写。写一个句子,让用户通过选择或填写替代单词的输入字段来填写句子的空白。
当输入字段没有插入到句子的末尾或开头时,对于界面的总体可读性和可理解性非常重要,输入字段占用的空间不会超过一行文本的高度。因此,输入文本框和下拉列表最适合这种用法。
当应用程序中有很多内容需要按条件过滤时,会经常使用这个模式。在Apple的iTunes中,该模式为智能播放列表创建了必要条件(请参阅页面底部的示例)。
模式的最大缺点是本地化不同语言的能力差。因为每个输入的放置,必须重新排列才能匹配每种语言的语法。以这种方式使用“填空”会阻碍用户界面的语言转化功能。
基本原理
我们都知道如何结束一句话。通过将输入的字段插入单词的句子中,用户界面变得一目了然,把可能的误解都最小化,还可以更清楚地理解上下文。
有时,很难找到一个同时被用户与系统描述都理解的输入标签。
考虑到维基百科框架(Ruby On Rails wiki)页面底部的示例。它的提交按钮(“保存”),作者姓名的输入字段,以及历史回溯链接都显示在同一句子中。这三个选项在单独的行中表示很容易,每个选项都有一个单独的标签。难的是,这三个选项被表示为一个句子,并放在彼此的上下文中。
此外,上面的示例使用输入提示模式(Input Prompt pattern)来,鼓励用户填写文本字段。
“填空”使得界面一目了然。作为人类,我们的的语言能力使我们能够填补句子中缺失的部分。