X и Y позиции различны для разных устройств - PullRequest
0 голосов
/ 17 октября 2019

Я добавляю изображение на экране со статическими координатами и показываю его в одной и той же позиции. На iPhone 6 и 8, но когда я запускаюсь в iPhone XR, позиция изображения меняется, вот мой код

var xCo = 166.5
var yCo = 328.0

let imageView = UIImageView()
imageView.image = #imageLiteral(resourceName: "ic_Pin")
imageView.frame = CGRect(x: xCo, y: yCo, width: 22, height: 22)
view.addSubview(imageView)

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

1 Ответ

1 голос
/ 17 октября 2019

Причина, по которой он появляется в другом месте, заключается в том, что безопасная зона представлена ​​устройствами X +. Чтобы правильно установить координату Y, вам необходимо учесть эту вставку. Теперь, поскольку вы позиционируете свой вид вручную, вам также необходимо вручную вычислить вставку безопасной области.

Верхняя вставка может быть достигнута путем получения высоты строки состояния:

UIApplication.shared.statusBarFrame.height

Или выможете напрямую использовать safeAreaInsets и рассчитать смещение из необходимых свойств:

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