今天介紹一下CGRect、CGPoint、Frame、Bounds。
CGRect:
這個基本上就是CGPoint + Size 這兩個的結合
所以這樣寫:
btn.frame = CGRect(origin: CGPoint(x: 0.0, y: 0.0), size: CGSize(width: 40, height: 40))
跟這樣寫:
btn2.frame = CGRect(x: 0.0, y: 0.0, width: 40, height: 25)
是一樣的,這邊都是去吃superView的位置,要記得是吃superView,不是SafeArea
frame跟bounds區別:
這裡建立一個btn,並印出他的frame跟bounds
frame: 相對 SuperView 的位置和大小。
Bounds => 相對於自己的位置和大小,預設是給0
btn.frame = CGRect(x: 100, y: 150, width: 150, height: 50) btn.backgroundColor = .green
print("按鈕Frame:\(btn.frame)")
print("按鈕的bounds:\(btn.bounds)")
self.view.addSubview(btn)
這裡就可以很清楚的知道bounds跟frame差別了