web-dev-qa-db-fra.com

Swift: Déterminer la taille de l'écran iOS

J'aimerais utiliser le code Swift pour positionner correctement les éléments de mon application quelle que soit la taille de l'écran. Par exemple, si je veux qu'un bouton occupe 75% de la largeur de l'écran, je pourrais faire quelque chose comme (screenWidth * .75) pour qu'il soit la largeur du bouton. J'ai trouvé que cela pouvait être déterminé dans Objective-C en faisant

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

Malheureusement, je ne sais pas comment convertir cela en Swift. est-ce que quelqu'un a une idée?

Merci!

182
Z-Tech

Dans Swift 3.

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

Dans les anciens Swift: Faites quelque chose comme ça:

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

alors vous pouvez accéder à la largeur et à la hauteur comme ceci:

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

si vous voulez 75% de la largeur de votre écran, vous pouvez aller:

let screenWidth = screenSize.width * 0.75

Swift 4.

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

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