Я новичок в дизайне IOS UI, и я работаю над написанием кода, который отображает настраиваемую навигационную панель, в которой будет использоваться мое транспортное приложение.Настроить внешний вид UINavigationBar
Вот особенности моей навигационной панели (смотрите рисунок ниже):
Layout Margins
является18
иSpace
между его подвидами является9
.- Все его подзоны '
height
:44
, и всеUIBarButtonItem
- это прямоугольник. backBarButtonItem
должно быть размещено так же, какleftBarButtonItem
.- нормальное состояние, его
height
is80
. - В расширенном состоянии (, такие как поля направлений смотреть на карте приложений), его
titleView
будет содержать дваUITextField
с, так что егоheight
должно быть136
.
See Real Design Скриншоты Так я объявил подкласс UINavigationBar
, и подключенный пользовательский класс Navigation Bar
объекта в раскадровке с использованием удостоверений инспектора. Однако я не знаю, с чего начать. Хотя я переделал функцию sizeThatFits(_ size:)
, чтобы сделать ее height
долгое время, subviews находятся близко к дну. Я не мог найти оптимальную практику для настройки UINavigationBar
, например, Google Maps, Uber и т. Д.
Как реализовать такую навигационную панель путем подкласса UINavigationBar
? Или есть другие решения?
подклассов 'UINavigationBar' не рекомендуется. Вы должны изучить класс «UIAppearance», чтобы получить желаемый интерфейс. – ystack
Мне нравится ваш снимок экрана выше, как вы это сделали? – StackUnderflow
Почему вы просто не используете простой вид и не добавляете в него нужные объекты? По-моему, это более простой и эффективный способ делать то, что вы хотите. – Adeel