NSView-userInteractionEnabled等效项

时间:2019-04-16 04:15:37

标签: macos cocoa appkit

是否存在可靠/官方的方法来完全禁用用户与视图的交互?类似的SO问题仅建议拦截鼠标事件,但是我正在寻找一个完整的解决方案,该解决方案将禁用视图及其后代中的所有交互,包括:

  • 鼠标事件
  • 触控板
  • 键盘焦点/事件
  • 加速键
  • 语音输入
  • 心理控制技术
  • 用户通过用户界面生成控制事件的其他任何官方方式

一旦禁用交互,视图(及其后代)也应该立即失去键盘/鼠标焦点。

这应该类似于没有transitionFromViewController:toViewController:options:completionHandler:标志的NSViewControllerTransitionAllowUserInteraction所做的事情,但是我找不到在动画之外执行此操作的方法。

更新: 描述我正在寻找的另一种方法是:视图必须完全像隐藏的一样工作,但仍要在屏幕上绘制。

0 个答案:

没有答案