外观
多屏触摸 返回键和输入法怎样找到正确的窗口?
标准回答
触摸首先需要正确的输入设备与 Display 关联,InputReader 处理坐标映射,InputDispatcher 根据显示、窗口命中区域、层级和可接收输入状态选择目标窗口。键盘和返回操作更依赖焦点及系统导航策略,不能简单认为总是送给主屏或最后一个 onResume 的 Activity。IME 还要结合输入目标窗口与该显示的输入法策略。我会联合检查 dumpsys input、window 和 display,确认设备映射、focused window、touchable region、坐标变换和 IME target。
延伸追问
BACK 可能进入系统导航和预测性返回流程,HOME 也可能由系统策略处理,不能把它们都视为普通 View 的 onKeyDown。
内容来源
- Android Framework 知识手册 · 原条目
3-10