У меня есть UIViewController, MyViewController, с UIToolbar вверху. При использовании построителя интерфейса схема документа выглядит так:
View
- subview1
- subview2
- UIToolbar
- Bar Button Item1
- Bar Button Item2
- Bar Button Item3
MyViewController используется во всем моем приложении. Иногда это в UINavigationcontroller, иногда в UIPopoverView.
Когда он появляется в UINavigationController, панель навигации закрывает UIToolbar и весь другой контент в верхней части View. На этом снимке экрана вы можете видеть, что UIToolbar полностью закрыт, а UIButton с изображением зеленого лампочка прикрыта частично.
Согласно документации Apple
Любое представление, которое необходимо привязать к верхней части и чуть ниже строки состояния (например, UIToolbar, UIButton и т. Д.), Требует дополнительной работы для правильного размещения.
Он переходит к решению, которое просто использует ограничения для перемещения содержимого вашего VC вниз на x пикселей, в моем случае это UIToolbar. Это не кажется хорошим решением, поскольку предполагает, что вы всегда хотите, чтобы контент перемещался вниз под панелью навигации. В моем случае, очевидно, нет, поскольку MyViewController не всегда находится в UINavigationController. Когда я использую решение ограничения, представленное в этих документах, UIToolbar странным образом плавает вниз на x пикселей без привязки сверху во всех случаях, когда MyViewController не находится в UINavigationController.
Мне что-то не хватает в том, как я должен отображать содержимое VC в UINavigationController? Большое спасибо.