在设计用户界面时,别忘了任何用户界面的核心目标:在用户和服务之间提供尽可能流畅的交互。这一界面不应该有疑问、没有答案或任何不确定的问题。
设计者应该清楚地反馈产品的状态,尤其是当产品出现错误的时候。所以,在发生错误时,应符合一些简单的规则:
他们应当是可识别和引人注目的。(例如,红色是常见的UI模式表示错误)
他们应当清楚地解释发生了什么,以及用户可以如何修复。
这些内容应当与上下文相关。(在出现错误的UI元素时,显示错误提示的地方最好)
他们不应具有刺激性。(您的用户是否对这个错误没有足够的愤怒?)
设计者还应该注意一些不希望出现的错误(比如服务器错误,找不到页面)。所有错误都会阻碍用户的使用过程。我们需要帮助用户处理这个问题,提供所有可能的解决方案,并尝试消除那些由非用户自身原因引起的不良体验,特别是那些非用户自身的原因。举例来说,对于404和500错误(找不到页面),一个可能的好方法是设计这些页面的插图或动画。
对表格单校验要谨慎。
当设计错误状态时,要尽力避免激怒用户。尤其要注意那些可能发生的所有表单校验。
例如,假设您有一个包含所需字段的表单。这就是说,开发者有一个相应的检查:“所有必填字段不能为空。”假定使用者尝试按随机顺序填写表格,当第1个必填字段失去焦点状态时,会弹出一个错误提示:「请填写此栏位,此选项为必需!」
这位可怜的用户看到了这一反馈,惊叫道:“等等,我只是在表格之间切换,而没有点击‘提交’!”情况可能会更糟,例如,假设您有另外的检查设置:在所有必需的字段都被填满之前,Submit按钮被禁用。
仔细想想!可怜的用户在提交表单时什么都没做,但你却把几个错误归咎于他。它一定会激怒每个人,你最好避免它的出现。
测量成本与价值。
别听那些开发工程师们的胡言乱语:“要按照你想要的交互方式开发程序,这很费力。”切记:如果无法避免这个问题将使你付出代价,“失去用户”的巨大代价!尽管开发成本很低,但是没有用户的产品一点价值也没有。