Swift: Determine iOS Screen size

IosSwift

Ios Problem Overview


I would like to use Swift code to properly position items in my app for no matter what the screen size is. For example, if I want a button to be 75% of the screen wide, I could do something like (screenWidth * .75) to be the width of the button. I have found that this could be determined in Objective-C by doing

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

Unfortunately, I am unsure of how to convert this to Swift. Does anyone have an idea?

Thanks!

Ios Solutions


Solution 1 - Ios

In Swift 5.0

let screenSize: CGRect = UIScreen.main.bounds

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
}

In Swift 3.0

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

In older swift:
Do something like this:

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

then you can access the width and height like this:

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

if you want 75% of your screen's width you can go:

let screenWidth = screenSize.width * 0.75

Attributions

All content for this solution is sourced from the original question on Stackoverflow.

The content on this page is licensed under the Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) license.

Content TypeOriginal AuthorOriginal Content on Stackoverflow
QuestionZ-TechView Question on Stackoverflow
Solution 1 - IosGoppinathView Answer on Stackoverflow