Я начал делать это с поповера, но в данном случае его очень сложно настроить (удалить стрелку, удалить фон) Далее я подумал, что лучше всего способ достижения цели — создать собственное меню в дочернем представлении со стековым представлением внутри. Но у меня есть несколько проблем:
проблема:
Когда я использовал всплывающее окно и нажал кнопку, чтобы отобразить его, всплывающее окно всегда открывалось в наилучшем направлении, независимо от того, где находилась кнопка на экране. Например, поведение значка приложения при нажатии на изображение. То есть «поповер» не игнорировал область сохранения и не выходил за край экрана. Всегда открывается в лучшую сторону. Как сделать то же самое для дочернего представления?

код:
Родитель:
Код: Выделить всё
func action() {
let child = BMenu()
addChildViewController(child)
view.addSubview(child.view)
child.didMove(toParentViewController: self)
// use this line to have real dynamic size from child not in parent
child.view.translatesAutoresizingMaskIntoConstraints = false
}
Подробнее здесь: https://stackoverflow.com/questions/787 ... ke-popover
Мобильная версия