Как я могу создать UIView размером один квадратный дюйм независимо от устройства, на котором он установлен? - PullRequest
0 голосов
/ 25 мая 2020

Я хочу создать UIView, занимающий квадрат в один дюйм на каждом iOS устройстве. Пока что я посмотрел размер пикселя моего текущего тестового устройства и перевел CGFloat в дюйм, используя размер пикселя моего тестового устройства, умноженный на масштабный коэффициент UIScreen. Есть ли какой-нибудь умный способ использовать встроенную информацию об UIDevice, чтобы получить CGFloat, который составляет один дюйм по экрану при применении к ширине и высоте UIView? Вместо того, чтобы создавать случаи, когда я вручную учитываю каждый возможный размер пикселя устройства, а затем должен обновлять его каждый раз, когда появляется новый размер пикселя, я хотел бы каким-то образом определить размер пикселя, используя характеристики устройства.

1 Ответ

0 голосов
/ 25 мая 2020

Расширение в https://github.com/marchv/UIScreenExtension работает для того, что я хочу сделать, путем компиляции данных обо всех возможных экранных PPI и сравнения модели UIDevice с ними, чтобы получить CGFloat, представляющий сантиметр физического расстояния. Спасибо NobodyNada - восстановите комментарий Моники, который привел меня к этому расширению, связав Как найти PPI программно с точностью .

На данный момент я принимаю, что не может быть способа получить физическое расстояние только на основе внутренних c свойств UIDevice, как предлагает другой ответчик на этот вопрос.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...