工具提示是了解应用程序的非常有用的界面范例。它们是可视控件和与该控件关联的应用程序特定操作之间的映射。用户只需悬停鼠标指针即可探索该操作而无需调用它。
触摸设备使这种范式基本上是不可能的。这限制了应用程序的可用性,在某些情况下变得非常神秘。
您知道触控设备是否存在工具提示概念的替代品?它们实际上在 ui 交互中缺乏一个自由度:指针位置。如何有效地重新获得这个沟通渠道?
工具提示是了解应用程序的非常有用的界面范例。它们是可视控件和与该控件关联的应用程序特定操作之间的映射。用户只需悬停鼠标指针即可探索该操作而无需调用它。
触摸设备使这种范式基本上是不可能的。这限制了应用程序的可用性,在某些情况下变得非常神秘。
您知道触控设备是否存在工具提示概念的替代品?它们实际上在 ui 交互中缺乏一个自由度:指针位置。如何有效地重新获得这个沟通渠道?
根据您询问的对象,他们甚至可能会告诉您需要重新设计需要工具提示才能理解的界面,非常糟糕(参见 Jef Raskin:人性化界面)。
事实上,工具提示是一个非常具体的问题的解决方案:没有标签的标志性按钮,例如在工具栏上看到的。只要有标签,就使用它们。无需提供工具提示,因为您已经有了说明特定控件将要做什么的文本。
更重要的是,触摸界面不能很好地映射到今天的WIMP界面模型。许多控件可以很好地使用鼠标指针来处理,但使用手指会令人沮丧。菜单、复选框、单选按钮浮现在脑海中。因此,触摸界面的界面范式必须与今天的鼠标和键盘驱动的界面截然不同。
所以我认为这里的问题不是缺少工具提示,而是我们在过去 30 年中没有探索许多与计算机交互的新方式(基本上自从Doug Engelbart和Xerox PARC进行的研究之后在 60 年代和 70 年代)。
触摸输入非常相似,它适用于大多数用途。但它不仅缺乏无触摸定位组件,而且还缺乏精确度。基本上所有触摸输入都适用于触摸某物并拖动某物。即使双击也很困难,所以我们真正需要的是在如何设计和制作专门为触摸界面的 UI 方面进行一些根本性的改变。
您会在专用设备(例如 iPhone)中看到其中的一些,因为这是一个既没有鼠标指针也没有键盘,只能触摸的平台。这意味着您不必构建一个必须能够与所有可能的交互方法一起使用的 UI(目前困扰 Windows 的一个问题;我确实有一台多点触控笔记本电脑,但对于许多任务来说,触控不起作用)但只有一个。但我认为,目前“普通”软件和计算机的通用解决方案还很遥远。
因此,我建议您对如何设计 UI 进行一些不同的思考。如前所述(可以在 Alan Cooper 的About Face中阅读),工具提示用于标记没有标签或空间不足以放置它们的控件。这里的关键使用场景是工具栏。但是为触摸而设计的界面无论如何都会使所有控件变得更大。即使您有工具提示,许多紧密组合在一起的小图标也很难与触摸输入一起使用,这仅仅是因为它缺乏精确度。
在这里阅读让我思考。工具提示通常用于为无文本按钮提供标签,但也是在界面中可用空间减少的情况下提供更多信息的好方法。有时,它用于提供上下文相关帮助或单个小部件的详细说明。
Tchalvak为所有 GUI 元素提供单击常见行为并在双击时提供工具提示的想法有其优点,甚至可以在一定程度上发现,因为许多人习惯于双击他们看到的所有内容,而不管元素是什么.
但我想起了几年前非常流行的旧?按钮,一旦点击它就会把光标变成一个问号。单击小部件后,您会看到一个小工具提示或信息气球。我相信类似的东西可以在触摸界面上轻松使用。由于缺少光标,应该给用户另一个视觉提示,告诉他他处于提供帮助模式。可能是改变屏幕的色调并给出一个小文本。也可以通过多点触控来完成,方法是要求?在按下另一个小部件的同时按下按钮以获取工具提示(应显示在稍微分开的位置,以免被手指太遮挡)。
但是,即使可以为我们的程序员保留相同的技术功能来拥有工具提示,我们也应该考虑意图,我们将使用它来做什么。
当您面对小屏幕时,我只会使用它来提供扩展帮助,否则,在“窗口”底部始终显示帮助区域(指任何类型的方形 io 界面) ,它会更改其内容以提供所选小部件的详细说明和/或帮助,就像在悬停时的某些首选项窗口中所做的那样。
总之,即使我们能够提供易于使用的工具提示,我们也应该考虑您会在其中添加什么。在触摸界面中,我不会放置需要理解工具提示的无标签模糊按钮,而是会使用它来提供上下文相关的高级帮助和故障排除。
我可以想到几个解决这个问题的方法
1) 将您的应用设计为不需要工具提示。将文本放在按钮上(无论多么小),使用简单的图标,或在“第一次使用按钮”时显示“帮助气泡”(一旦用户了解按钮的用途,可选择“不再显示”)
2) 在touch up时响应事件,而不是 touch down。通过显示“帮助”气泡来响应已按住 0.5-1 秒的触摸。如果显示帮助气泡,则按钮的正常事件不会在触摸时触发(因此寻求帮助的用户不会最终触发操作)。
3)使用@voyager建议的“问号”拖放范例。或者,让用户先“点击”问号,然后点击他需要帮助的项目。
屏幕键盘上的工具提示 - 与被触摸的字母相呼应 - 足以证明工具提示在触摸界面上非常有用。我来这篇文章是为了看看我如何在移动网页上实现它。
我发现工具提示非常有用,而且我认为每个人都认为在良好的 UI 设计中不需要它们的想法非常有限。
只是给你一些想法...
一般来说,一个好的 UI 设计(就像生活中的许多其他事情一样)是在一定的使用时间内有效和高效的。有效的意思是,你可以做你想做的事(例如用手机打电话)。高效意味着,只需最少的用户努力即可实现(例如,只需键入数字并按下一些“拨号”按钮,而不必先浏览某些菜单)。在一段时间内,意味着它在第一次使用时可能不是最佳的,或者相反,在您了解它以及介于两者之间的所有内容之后(例如机场航站楼的屏幕可能需要更多地关注一次性用户的“傻瓜”,而不是像 Adobe Premiere 这样的专业人士的视频编辑软件)。
这就是说我发现工具提示在某些情况下非常有用,其中
现在回到触摸界面的局限性和可能性……
也许持久标签给出界面上每个或多或少“模糊”功能的简短描述,并结合执行操作时的上下文通知消息 - 例如:用户修改数据 => 通知出现提醒他不要忘记使用在此通知期间将短暂突出显示的按钮。
好吧,工具提示的好处是它在动作发生之前添加了一个(非常次要的)信息的叠加阶段。因此,在我看来,通过“双击”重新添加该层以通过“单击”执行操作以显示信息将是一个等效的想法。
我想我们都看过带有未来屏幕界面的电影,有人触摸屏幕,它会在触摸周围展开几何形状的信息。为什么不使用这个概念,第一次触摸将有关操作的信息扩展为有用的页面内工具提示,然后第二次单击同一位置将确认/执行该操作。
如果不是“click-on-item-shows-tooltip-second-click-performs-action”,那么接近度如何?如果您想要有关 UI 小部件的信息,并且有足够的间距,您可以触摸小部件旁边并接收有关它的信息,触摸小部件并执行操作。
工具提示提供的信息很少(指针与手、文本工具提示、悬停粗体),我认为您也可以通过密切关注用户操作历史来复制工具提示信息。如果他们最近点击两件事比另一件事更频繁,则为那些点击频率更高的内容而不是其他内容显示默认工具提示和附加值和重点。
编辑:另外,考虑更多,在不需要滚动或类似的空间中拖动似乎是工具提示信息的好触发器。以 iphone 的键盘为例。每个字母在拖动时都有一个工具提示,而字母本身在您释放时实际上是激活的。有助于重新定位精度。
除此之外,我认为细节会起作用。你说的是笔记本平板电脑吗?空间非常有限的手机触摸界面?我认为可用空间在您必须如何使用触摸界面做事方面起着重要作用。
触摸和保持呢?我认为就可用性和实现而言,这将是一个相当简单的接口规则。就像很多与可用性有关的事情一样,虽然很难说,直到任何一个想法已经存在一段时间才能看到它在一堆不同的环境中使用......
我的回答可能不太实用,但是...
如果应用程序都支持撤消功能,问题就会得到解决,并且人们习惯于知道他们总是可以撤销任何操作。
正如 Andreas 所说,“如果您不确定某些功能,您会毫不犹豫地点击按钮”。
但是,将撤消作为安全网,可以有更多的“做”,而更少的“犹豫、担心、在我点击...点击之前找出会发生什么”。
这就是后退按钮如此受欢迎的原因之一,Android 甚至将其应用于整个操作系统。
不幸的是(这里是不切实际的......)
这可能会有所帮助:
他们说工具提示是
召唤者:
- 将光标悬停在元素上
- 使用键盘(通常是 tab 键)关注元素
- 一触即发
它没有很多关于移动的信息。关于你能遇到的唯一一个是 on touch,如果你的按钮做了什么,这会令人沮丧,在你知道它做什么之前你不想触摸它。长按可能有效,但某些应用程序需要长按才能使用其他功能,这是一个使用过的 UX 路径,除非您告诉用户,否则用户不会期望长按工具提示。
我认为工具提示可能无法像在桌面上那样在移动设备上发挥作用。如果没有悬停,您需要另一种保留方式来快速提醒或向用户显示图标或按钮的作用。
我能想到的最好的事情是帮助模式。按设置,然后按“帮助”,在底部显示短卡片,上面写着“单击元素寻求帮助”和“关闭”按钮。然后点击工具提示元素将向您显示它们的额外信息。
我在上面看到了这一点,但另一个现代用例是游戏。它们通常在设计时考虑到操纵杆,这意味着它们大约有 14 个按钮可供使用,但大多数都被游戏功能占用。
在 RPG 中,它们通常具有复杂的统计屏幕,保证玩家不知道(通常他们为每个游戏发明新系统),其中充满了重要的数字,但玩家不知道。其中许多让您点击选择按钮进入工具提示/解释模式。
这可能适用于一个足够复杂以至于需要在移动设备上提供工具提示的应用程序,并且是我现在能看到的唯一模式,它在常见的用户体验设计之外还没有那么远。
套用爱因斯坦的话说,触摸应该尽可能简单,但不能更简单。
这里的根本问题不是触摸,而是状态。当你触摸它时,物体处于什么状态?触摸会改变它的状态吗?状态的变化如何反映给用户?
从设计的角度来看,试图在一次触摸中包含所有操作只会在最简单的情况下起作用。对于任何更有用的应用程序,第一次触摸可能会改变状态,并且该状态可以通过对象图像的变化、工具顶部(甚至在设定时间后消失的瞬时工具提示)或其他方式来反映。触摸选定的对象与触摸未选定的对象应该具有不同的含义。这需要是界面的可发现方面。
请记住,悬停工具提示对初学者有很大帮助,他们不需要采取任何行动来学习,因为初学者总是很慢,并且在不安全地移动光标时会弹出。另一方面,它们非常出色,因为它们不会减慢高级用户的速度。
对于平板电脑,我会采用问号的概念,但会增加一些复杂性:
1)当您点击问号时,它会打开“帮助”模式。2)然后您可以点击有问题的控件,它会显示工具提示。3)如果您再次点击同一个控件,它会终止帮助模式并执行控件应该执行的操作。4)如果您点击任何其他控件,它会显示他的工具提示并且帮助模式保持打开状态。5) 再次点击问号可以终止帮助模式。