触摸命中诊断插件

无所事事搞个插件,欢迎使用。

TouchScope - Cocos Creator UI 触摸命中诊断

解决什么问题?

  • Button 看起来正常,却怎么都点不到;
  • 明明没有禁用,点击事件就是不触发;
  • 一个透明节点挡住了下面所有按钮;
  • BlockInputEvents 放错层级,整片 UI 都失去响应;
  • 编辑器里看不出问题,只能不断打日志、改层级、重新 Preview。

这类问题往往不是业务逻辑本身,而是交互区域、节点状态、透明度、事件配置或输入拦截导致的。
这插件就是为了把排查过程变得直观一些。

TouchScope 能做什么

一键扫描当前场景

TouchScope 可以扫描以下内置 UI 组件:

  • Button
  • Toggle
  • Slider
  • EditBox
  • ScrollView
  • BlockInputEvents

并检查常见风险:

  • 节点未激活;
  • 组件未启用;
  • Button / Toggle 不可交互;
  • 点击区域宽高为 0;
  • 交互区域完全透明;
  • 没有配置交互事件;
  • ScrollView 缺少 Content 或未启用滚动方向;
  • 不同层级分支的交互区域疑似重叠;
  • BlockInputEvents 疑似遮挡其他交互区域。

点击扫描结果,可以直接在层级管理器中定位对应节点。

Preview 中显示真实命中区域

点击“挂载运行时探针”并启动 Preview 后,TouchScope 会在游戏画面中显示:

  • 绿色:正常交互区域;
  • 黄色:禁用、不可交互或透明区域;
  • 红色:BlockInputEvents;
  • 青色:本次输入事件的实际目标。

F8 可以随时开关诊断显示。调试完成后,可以从面板卸载探针。

1赞