K2.07.3runtime input-mode adaptation设计研究

输入方式切换需要即时适配

别名: 运行时输入适配 · 平板模式切换 · per-event pointer adaptation

概念解释

人把笔记本支成帐篷,第一下手指已经落到工具栏上。即时适配(runtime input-mode adaptation)要求界面在这一下当时改命中、改滚动、改哪些东西还依赖悬停,而不是等重启、等新开一扇窗口、等用户去打开系统「平板模式」。同一设备会换输入是前提;这条只谈适配必须发生在切换当下,而不是发生在下一次冷启动。

机制

输入切换的时间尺度是秒,不是会话。手离开键盘到指腹接触屏幕,中间往往没有一个可点击的「切换」步骤。系统级平板模式把适配做成一次会话翻转:开了之后整机按触摸来,关了之后整机按键鼠来——但真实使用是同一分钟里两种输入交错。按会话翻转,人要么忍受键鼠密度下的触摸,要么忍受触摸密度下的指针行程,而且翻转本身还要找开关。按事件适配则用当前指针类型决定这一击的命中与反馈:手指落下时滚动改成直接拖动内容、悬停才出现的次要操作让出可点替代;光标回来时那些替代不必挡住专家路径。适配若滞后到下一帧布局重排完成之后,第一击已经按旧布局落下,命中的是上一输入假设下的热区。

怎么研究

比较三种策略:启动时锁定、系统平板模式翻转、按指针事件适配。任务中途改变姿势,看第一击和随后几击。

自变量:适配粒度(进程生命周期 / 系统模式 / 每事件)、布局是否在第一击前完成重排、悬停专属控件在触摸下是否有替代。 因变量:切换后第一击的命中、因布局跳动造成的误触、找到系统模式开关的时间、来回切换时的不稳定感。

布局跳动本身会制造新的错误:按钮在手指按下后面移动。要把「没适配」和「适配太晚、第一击落在旧位置」分开编码。实验室里「先打开平板模式再开始任务」测不到真实的第一击问题。

边界

整段任务只使用一种输入时,即时适配没有观察窗口,做了也不会被感知。适配若只改装饰、不改命中与可发现路径,人仍会在第一击失败。把窗口拖到没有触摸的外接屏上,再在笔记本屏上用手指点——两块表面的输入可以长期并存,按「当前前台窗口所在屏」一刀切会切错。游戏或全屏演示若把任何布局重排当成破坏沉浸的事,更稳妥的是两种输入共用一套已经按触摸排好的命中,而不是来回变密度。

怎么落地

  • 在指针事件上分支,而不是在「平板模式」开关上分支;第一击触摸就应按触摸命中处理。
  • 悬停才出现的操作在触摸下要有立刻可点的替代,不要等用户发现「现在没有光标」。
  • 布局从键鼠密度改到触摸密度时,避免在手指已经按下之后才移动目标;能预先按可触尺寸排的控件就常驻可触尺寸。
  • 验证:窗口开着、鼠标还在用,合盖成帐篷,立刻用手指点刚才鼠标所在的那一组控件。第一击必须命中原意。再翻回来用鼠标,确认没有必须重新打开应用才能恢复指针精度。把「第一击落空」和「第一击时按钮挪走了」分开记。

延伸

  • 同组K2.07.1 同一设备可能在两种输入间切换 · K2.07.2 触达尺寸需按触摸标准而非鼠标标准
  • 相邻K2.06 悬停带来的设计自由 · C1.06 悬停状态及其在触屏上的缺失 · K3.04 外接键盘模式
  • 站内检索runtime input adaptation · pointerType · tablet mode

同组卡片

快捷操作

分享

分享当前页面

ios_share

https://hci.top/zh/handbook/K2.07.3