生活随笔
收集整理的這篇文章主要介紹了
关于swift5以上的SnapKit框架的入门教程使用
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
關于swift的SnapKit框架的入門教程使用
蘋果在swift框架下面,一般使用snapKit進行純代碼的自動布局。常見的布局方式一種是純代碼,還有VFL,此語法較難,或者相對來說比較麻煩。還有storyboard故事板進行布局,還有xib添加約束進行布局,snapKit是純代碼進行自動布局,為了適用多種設備,就需要自動布局。例如iPhone6s和iPhone13設備,就需要進行調試,我選取的是iPhone13進行調試。也是這個月剛剛發布的新產品。
cocoaPods添加的版本。
pod
'SnapKit', '~> 5.0.1'
截止我發稿最新的版本。
居中顯示
創建一個box的View,設置寬高為100,在父View中居中顯示。
private func test1()->Void{let box
= UIView()box
.backgroundColor
= UIColor.brown
self.view
.addSubview(box
)box
.snp
.makeConstraints
{ (make
) inmake
.size
.equalTo(100)make
.center
.equalToSuperview()}addLabel(view1
: box
, strTitle
: "Box", colors
: .white
)}
2.dividedBy、multipliedBy兩者的用法都是一樣的,dividedBy(x)是除以x,multipliedBy(x)是乘以x。
private func test2(){let box
= UIView()box
.backgroundColor
= UIColor.blue
self.view
.addSubview(box
)box
.snp
.makeConstraints
{ (make
) inmake
.center
.equalToSuperview()make
.width
.equalToSuperview().dividedBy(2)make
.height
.equalToSuperview().multipliedBy(0.25)}addLabel(view1
: box
, strTitle
: "box", colors
: .white
)}
3.offset (偏移量,位移)
private func test3(){let box
= UIView()box
.backgroundColor
= UIColor.blue
self.view
.addSubview(box
)box
.snp
.makeConstraints
{ (make
) inmake
.top
.equalToSuperview().offset(100)make
.left.equalToSuperview().offset(50)make
.bottom
.equalToSuperview().offset(-100)make
.right.equalToSuperview().offset(-50)}addLabel(view1
: box
, strTitle
: "Box", colors
: .white
)}
topLayoutGuide、bottomLayoutGuide、safeAreaLayoutGuide
topLayoutGuide、bottomLayoutGuide在iOS 11.0 被棄用了,但是這里還是介紹一下這兩者的用法,之所以被廢棄是因為iPhone X之后推出的SafeArea概念,所以建議使用 safeAreaLayoutGuide。
作者:ImWiki
鏈接:https://www.jianshu.com/p/332b816cd3e4
來源:簡書
著作權歸作者所有。商業轉載請聯系作者獲得授權,非商業轉載請注明出處。
private func test4(){let box1
= UIView()box1
.backgroundColor
= UIColor.blue
self.view
.addSubview(box1
)box1
.snp
.makeConstraints
{ (make
) inmake
.size
.equalTo(100)}addLabel(view1
: box1
, strTitle
: "Box1", colors
: .white
)let box2
= UIView()box2
.backgroundColor
= UIColor.red
self.view
.addSubview(box2
)box2
.snp
.makeConstraints
{ (make
) inmake
.size
.equalTo(100)make
.right.equalToSuperview().offset(0)make
.top
.equalTo(self.view
.safeAreaLayoutGuide
.snp
.top
)}addLabel(view1
: box2
, strTitle
: "Box2", colors
: .white
)let box3
= UIView()box3
.backgroundColor
= UIColor.yellow
self.view
.addSubview(box3
)box3
.snp
.makeConstraints
{ (make
) inmake
.size
.equalTo(100)make
.bottom
.equalToSuperview().offset(0)}addLabel(view1
: box3
, strTitle
: "Box3", colors
: .black
)let box4
= UIView()box4
.backgroundColor
= UIColor.black
self.view
.addSubview(box4
)box4
.snp
.makeConstraints
{ (make
) inmake
.size
.equalTo(100)make
.right.equalToSuperview().offset(0)make
.bottom
.equalTo(self.view
.safeAreaLayoutGuide
.snp
.bottom
)}addLabel(view1
: box4
, strTitle
: "Box4", colors
: .white
)}
priority 優先級用法
SnapKit一共提供了4種優先級,優先級順序是:required > high > medium > low。
private func test5(){let box1
= UIView()box1
.backgroundColor
= UIColor.blue
self.view
.addSubview(box1
)box1
.snp
.makeConstraints
{ (make
) inmake
.center
.equalToSuperview().priority(.medium
)make
.right.equalToSuperview().offset(10).priority(.high
)make
.top
.equalToSuperview().offset(10).priority(.low
)make
.size
.equalTo(100).priority(.medium
)make
.size
.equalTo(200).priority(.low
)}}
git的地址如下。
https://e.coding.net/lujun1/iossnapkit/IOSSnapKit.git
總結
以上是生活随笔為你收集整理的关于swift5以上的SnapKit框架的入门教程使用的全部內容,希望文章能夠幫你解決所遇到的問題。
如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。