UIPopoverController не закрывается при открытии из self.navigationItem (внутри UINavigationController)

У меня есть проблема при отклонении поповера, который был запущен из элемента навигации UINavigationController. Похоже, что элемент навигации, который вставляется UINavigationController, не вызывает отмены UIPopoverController. Обычно, когда вы нажимаете вне поповера, он исчезает. Но когда вы нажимаете на элемент навигации, всплывающее окно не отклоняется. Хуже того, если вы нажмете кнопку, которая запускает поповер, вы получите второй экземпляр поповера.

Все это делается с помощью раскадровки: - Создайте представление, вставьте его в UINavigationView, чтобы оно получило элемент навигации вверху. - Поместите UIBarButtonItem в навигационный элемент (левый или правый, не имеет значения для начального представления стека навигации). - Определите другое представление и перетащите переход из UIBarButtonItem в это представление. - Установите переход, чтобы быть поповером.

Как только всплывающее окно открыто, я не могу отклонить его, нажав на элемент навигации. Я не могу поверить, что это «работает как задумано», поэтому я подозреваю, что что-то упустил.

Хотя моя цель состоит в том, чтобы программировать как можно меньше (вот что такое раскадровки? отклонить всплывающее окно при обнаружении касания элемента навигации. К сожалению, навигационный элемент не является UIVIew, поэтому в нем отсутствует метод addGestureRecognizer: метод ...

РЕДАКТИРОВАТЬ: Добавление UITapGesturerecognizer к self.navigationController.navigationBar возможно, но предотвращает любое нажатие для достижения UIBarButtonItems на навигационной панели. Да, я мог этого ожидать.

Большое спасибо за помощь, ноби

Ответы на вопрос(4)

Ваш ответ на вопрос