Захватывая штрихи на прозрачном UIView - PullRequest
1 голос
/ 11 января 2012

У меня есть приложение, которое имеет ряд пользовательских модальных диалоговых окон.Будучи модальным, мне нужно запретить пользователям взаимодействовать с элементами, которые находятся сбоку диалогов (например, когда появляется диалоговое окно паузы, я не хочу, чтобы пользователи могли касаться кнопок для навигации по приложению).Чтобы сделать их модальными, у меня есть прозрачное UIView «позади» каждого из диалоговых окон, чтобы перехватывать прикосновения.Это прекрасно работает, за исключением того, что есть UIView анимация, которая затухает в диалогах, и пока они затухают, диалоговые окна игнорируют прикосновения.

Насколько я могу судить, проблема в том, что если UIViewАльфа не равна 1,0, то он игнорирует прикосновения.Есть ли способ получить UIView с альфа-смешиванием, реагирующим на прикосновения?

Ответы [ 2 ]

0 голосов
/ 11 января 2012

UIView не игнорирует касания, если его альфа не равен 0.0, или если его свойство «hidden» не установлено в YES.Обе эти настройки делают UIView невидимым.

Я бы предложил использовать модальный контроллер вида - если только по какой-то причине вы не хотите, чтобы другие кнопки отображались.Вы бы установили отдельный контроллер вида для каждого модального вида, а не прозрачный вид.Затем для его управления используйте метод presentModalViewController: animated: контроллера вида.

Обратите внимание, что контроллеры модального представления могут быть вложенными (один может вызывать другой), так что вы можете при необходимости объединить несколько цепочек вместе..

0 голосов
/ 11 января 2012

Если вы анимируете альфа-представление диалогового окна и хотите, чтобы диалоговое представление поддерживало взаимодействие во время анимации, то при создании анимации необходимо использовать параметр UIViewAnimationOptionAllowUserInteraction.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...