Увольнение NSPopover не удаляет его из представленных родителем ViewControllers (Xcode 11) - PullRequest
0 голосов
/ 25 октября 2019

Используя Xcode 11 и macOS 10.15, у меня есть ParentViewController, который представляет PopoverViewController в режиме .transient (= щелчок за пределами поповер отклоняет его).

Когда пользователь щелкает за пределами поповер, он корректно отклоняется, а PopoverViewController правильно удаляется из ParentViewController.presentedViewControllers. -> ОК

НО, внутри всплывающего окна есть кнопка, которая вызывает self.dismiss(self). Поповер удален, но не удален из ParentViewController.presentedViewControllers. -> ПРОБЛЕМА

Я не думаю, что у меня была эта проблема раньше.

Я что-то упустил здесь, или это ошибка в AppKit?

Спасибомного за вашу помощь!

1 Ответ

1 голос
/ 25 октября 2019

Не берите в голову, я делал это неправильно.

Как сказано в документации, вы должны вызвать dismiss из контроллера представления.

Таким образом, используя self.presentingViewController?.dismiss(self) в представленном контроллере представлениярешил вопрос.

...