16

When I created CGRect in Objective-c and I didn't want to set each value, I created in this way:

 (CGRect){CGPointMake(0, 0), [UIScreen mainScreen].bounds.size}

Do you know a similar way in swift?

xarly
  • 2,054
  • 4
  • 24
  • 40

3 Answers3

36

Swift adds a special initializer to CGRect that does just that.

let rect = CGRect(
    origin: CGPoint(x: 0, y: 0),
    size: UIScreen.mainScreen().bounds.size
)

For Swift 3.0 you would do this...

let rect = CGRect(
    origin: CGPoint(x: 0, y: 0),
    size: UIScreen.main.bounds.size
)
teewuane
  • 5,524
  • 5
  • 37
  • 43
Mick MacCallum
  • 129,200
  • 40
  • 280
  • 281
2

Another way for 0,0

let rect = CGRect(
    origin: CGPointZero,
    size: UIScreen.main.bounds.size
)
xarly
  • 2,054
  • 4
  • 24
  • 40
0
  • swift5

let rect = UIScreen.main.bounds

AllenPong
  • 15
  • 2