NSView - эквивалент userInteractionEnabled - PullRequest
0 голосов
/ 16 апреля 2019

Есть ли надежный / официальный способ полностью отключить взаимодействие пользователя с представлением? Подобные вопросы SO предполагают только перехват событий мыши, но я ищу полное решение, которое отключит все видимые взаимодействия и его потомков, включая:

  • события мыши
  • сенсорная панель
  • клавиатурный фокус / события
  • клавиши ускорения
  • голосовой ввод
  • техника контроля сознания
  • любой другой официальный способ для пользователя порождать события управления из пользовательского интерфейса

Вид (и его потомки) также должен сразу же потерять фокус клавиатуры / мыши, когда взаимодействие отключено.

Это должно быть похоже на то, что transitionFromViewController:toViewController:options:completionHandler: делает без флага NSViewControllerTransitionAllowUserInteraction, но я не могу найти способ сделать это вне анимации.

Обновление: Другой способ описать то, что я ищу: представление должно действовать полностью, как будто оно скрыто, но все равно должно отображаться на экране.

...