如果你是一个按钮,你只有一个任务
在我最近那篇大型交互式文章中,我一直(现在仍然)担心的一件事是:通过展示所有这些经典的桌面端示例,整篇文章可能会显得过时,仿佛只属于一个逝去的时代。
然而,它所揭示的挑战却是普适的。以下是我刚刚留意到的一个例子。这是在 iPhone 和 Nothing Phone 上旋转图片的方式:
这是一个相当标准的控件——点一次逆时针旋转 90 度,再点一次继续旋转,以此类推——照片方向会有一个流畅的过渡动画,让你不至于迷失方向。
现在,让我稍微夸张一下这个问题:快速连续点击旋转按钮八次。八次的结果理论上应该是工程师所说的"空操作"(no-op)——图片完整旋转两圈,最终回到起点。在 iPhone 上,结果确实如此。
但在 Nothing Phone / Android 上,情况就完全不同了:
iPhone 会记住并缓冲点击,因此第二次等待中的旋转会在第一次完成后立即执行。而 Nothing Phone 的按钮会通过触觉反馈和声音来确认点击,但如果上一次旋转的动画仍在播放中,它就会直接忽略这次点击。
这为什么重要?
我经常思考"情境性失能"(situational disability)这一框架——它指出,残疾并不是只发生在少数人身上而与其他人无关的事情。不,几乎每个人都会在某个时刻遇到让自己实际上处于失能状态的情境。这就是为什么无障碍(accessibility)远比我们很多人想象得更加重要。
我认为,同样的道理也适用于"随意使用"与"非随意使用"。手机拍照通常是随意的。手机相机通常能很好地检测照片的方向——但在你俯拍时就会混乱。举个例子,如果你需要拍摄一堆横向的文档,最终可能要一张一张地旋转几十张照片。如果你可以随心所欲地连按三下按钮,不用思考、不用留意、不会被一个不再有帮助的动画阻塞 UI,那将会多么可预测和令人愉悦。
我想,这就是"情境性专业用户"(situational power user-ness)。只要时间足够长——或者在这个案例中,用户基数足够大——即使是像手机照片编辑这样随意的界面,也会遇到那些别无选择、不得不更认真地对待它并期望更多功能的用户。
顺便说一句,缓冲点击并不是唯一的解决方案。你也可以在被中断的点击后停止或加速动画。但原则是:永远不要强迫用户等动画播放完。
原文出处:unsung.aresluna.org