Опасно ли определять высоту пользовательской панели навигации iOS, обнаруживая устройство? - PullRequest
0 голосов
/ 08 июня 2018

У меня есть приложение с пользовательской панелью навигации iOS. Я создаю его с нуля, создав подклассы UIView.

. Я хочу, чтобы навигация расширялась от верхней безопасной области или ниже верхнейстрока состояния (в зависимости от того, какая версия iOS и устройство мы говорим) определенное количество пикселей.Мне также нужно, чтобы он расширялся до самого верха экрана независимо от устройства, поскольку панель навигации является полупрозрачной и должна иметь прокрутку содержимого под ней.Это означает, что содержимое будет прокручиваться под строкой состояния и в безопасной области.

Я успешно создал динамическую версию, которая не имеет жестко закодированных значений, за исключением знания о том, что строка состояния составляет 20 пикселей.Это довольно сложно и может сломаться.Это также требует, чтобы я изменил размер в layoutSubviews, когда вы знаете размер безопасной области.

Гораздо более простым решением было бы определение типа устройства и жесткого кодирования высоты на основе этого, но это кажется неправильным.Каковы недостатки жесткого подхода?

...