1
我在YouTube,導遊,常見問題等等中觀看過很多視頻,所以我可以使用自動佈局創建一個視圖,但是現在,我有一個項目,動態加載元素以及許多不同的視圖,如下所示:
(Sketch 3屏幕)Autolayout在Xcode 7.3(swift 2)
有沒有任何框架或方法可以讓我的工作更輕鬆?
我在YouTube,導遊,常見問題等等中觀看過很多視頻,所以我可以使用自動佈局創建一個視圖,但是現在,我有一個項目,動態加載元素以及許多不同的視圖,如下所示:
(Sketch 3屏幕)Autolayout在Xcode 7.3(swift 2)
有沒有任何框架或方法可以讓我的工作更輕鬆?
有一個偉大的文章,以瞭解其更深層次的: https://www.objc.io/issues/3-views/advanced-auto-layout-toolbox/
反正有一組自動佈局工具,可以很容易地天天使用它:
砌體(https://github.com/SnapKit/Masonry)
//these two constraints are exactly the same
make.left.greaterThanOrEqualTo(label);
make.left.greaterThanOrEqualTo(label.mas_left);
//creates view.left = view.superview.left + 10
make.left.lessThanOrEqualTo(@10)
EasyPeasy(https://github.com/nakiostudio/EasyPeasy)
// Apply width = 0 and height = 0 constraints
view <- Size()
// Apply width = referenceView.width and height = referenceView.height constraints
view <- Size().like(referenceView)
// Apply width = 100 and height = 100 constraints
view <- Size(100)
// Apply width = 200 and height = 100 constraints
view <- Size(CGSize(width: 200, height: 100)
// Apply left = 0, right = 0, top = 0 and bottom = 0 constraints to its superview
view <- Edges()
// Apply left = 10, right = 10, top = 10 and bottom = 10 constraints to its superview
view <- Edges(10)
// Apply left = 10, right = 10, top = 5 and bottom = 5 constraints to its superview
view <- Edges(UIEdgeInsets(top: 5, left: 10, bottom: 5, right: 10))
PureLayout(https://github.com/PureLayout/PureLayout)
//returns the constraints it creates so you have full control:
let constraint = skinnyView.autoMatchDimension(.Height, toDimension: .Width, ofView: tallView)
// 2 constraints created & activated in one line!
logoImageView.autoCenterInSuperview()
// 4 constraints created & activated in one line!
textContentView.autoPinEdgesToSuperviewEdgesWithInsets(UIEdgeInsets(top: 20.0, left: 5.0, bottom: 10.0, right: 5.0))
自動佈局和大小班看起來很困難,但如果你對得到的把握,這將是最開心的去努力。花一些時間學習它,享受編碼。 –