macos - NSView - userInteractionEnabled 等效
问题描述
是否有可靠/官方的方式来完全禁用用户与视图的交互?类似的 SO 问题仅建议拦截鼠标事件,但我正在寻找一个完整的解决方案,它将禁用视图中的所有交互及其后代,包括:
- 鼠标事件
- 触控板
- 键盘焦点/事件
- 加速键
- 语音输入
- 精神控制技术
- 用户从 UI 产生控制事件的任何其他官方方式
一旦禁用交互,视图(及其后代)也应该立即失去键盘/鼠标焦点。
这应该类似于transitionFromViewController:toViewController:options:completionHandler:
没有NSViewControllerTransitionAllowUserInteraction
标志的情况,但我找不到在动画之外执行此操作的方法。
更新: 描述我正在寻找的另一种方式是:视图必须完全像隐藏一样,但仍会在屏幕上绘制。
解决方案
推荐阅读
- java - 如何在不更新 Android Studio 中的 Google 地图的情况下使用 API 中的位置刷新标记?
- css - 模态内容不显示在下拉列表中
- node.js - 在vercel上安装期间节点pre gyp错误
- docker - Dockerized Jenkins 无法找到 docker
- javascript - 使用键映射和过滤对象数组
- java - 如何循环 Try 块,直到没有捕获到异常?
- javascript - 当 socket.io 发出时,DOM 没有正确刷新。请帮帮我
- regex - 可能包含逗号和点的数值的正则表达式
- sql - 根据扩展的日期范围连接表
- python - 如何在python中传递简单的参数