До сих пор большинство, если не все, экраны, которые я разработал, имели 2 типа поведения в контексте руководства по нижней компоновке:
Содержимое статично и должно быть закреплено внизу:
В этом случае обычно я создаю направляющую нижнего макета от самого нижнего подвида vc до его суперпредставления (корневой вид vc вместо нижней безопасной области vc). И это работает в обоих случаях, если цвет фона выровненного по низу представления и корневого/родительского представления на краю iphoneX одинаков.
содержимое прокручивается или должно «переполняться», или цвет фона нижнего подвида и vc различается. Например, нижняя кнопка или панель вкладок должны быть выровнены по безопасной области, но их фон должен «продолжаться» в iPhoneX до небезопасной области.
В этом случае я либо добавляю краевую вставку/маржу к представлениям, которые соответствуют небезопасной области (что приводит к дополнительному полю для нормальных квадратных экранов), либо мне придется настроить ограничение в зависимости от типа устройства.
В свете этого, знает ли кто-нибудь о какой-либо технике для обобщения/упрощения 2-го пункта? Если вы находите это действительно уродливым, нужно добавлять проверки, зависящие от устройства, почти для каждого контроллера представления.
Технически это происходит уже с «автоматической настройкой вставок краев контроллера представления», но только для прокрутки/просмотра таблиц.
TLDR; Можно ли позволить просмотру «растягиваться» до небезопасной области в iphoneX? Чтобы получить в основном такое же поведение панели навигации, но для нижней части экрана, без жесткого кодирования чего-либо?
Плюс: если можно обобщить, включая 1-е разыскиваемое поведение с флагом или подобным.