Подтвердить что ты не робот

Swift: определение размера экрана iOS

Я бы хотел использовать код Swift для правильного позиционирования элементов в моем приложении независимо от размера экрана. Например, если я хочу, чтобы кнопка была на 75% ширины экрана, я мог бы сделать что-то вроде (screenWidth * .75) как ширина кнопки. Я обнаружил, что это можно определить в Objective-C, выполнив

CGFloat screenWidth = screenSize.width;
CGFloat screenHeight = screenSize.height;

К сожалению, я не уверен, как преобразовать это в Swift. У кого-нибудь есть идея?

Спасибо!

4b9b3361

Ответ 1

В Swift 3.0

let screenSize = UIScreen.main.bounds
let screenWidth = screenSize.width
let screenHeight = screenSize.height

В старшем Swift: Сделайте что-то вроде этого:

let screenSize: CGRect = UIScreen.mainScreen().bounds

тогда вы можете получить доступ к ширине и высоте следующим образом:

let screenWidth = screenSize.width
let screenHeight = screenSize.height

если вы хотите 75% ширины экрана, вы можете перейти:

let screenWidth = screenSize.width * 0.75

Swift 4.0

// Screen width.
public var screenWidth: CGFloat {
    return UIScreen.main.bounds.width
}

// Screen height.
public var screenHeight: CGFloat {
    return UIScreen.main.bounds.height
}

В Swift 5.0

let screenSize: CGRect = UIScreen.main.bounds