1.하단에 요새 많이 구매하기 버튼을 넣는 식으로 바디와 푸터를 구분해보자.
view 구조는
view - body
- footer
body는 top,left,right는 view와 맞닿아 있고 footer의 top과 맞닿아 있다.
footer는 bottom,left,right는 view와 맞닿아 있고 body의 bottom과 맞닿아 있다.
그리고 footer는 높이를 주지 않게되면 화면에 나타 나지 않게된다.
class View3Controller: UIViewController {
var didSetupConstraints = false
let footerView: UIView = {
let view = UIView()
view.backgroundColor = UIColor.red
return view
}()
let bodyView: UIView = {
let view = UIView()
view.backgroundColor = UIColor.gray
return view
}()
override func viewDidLoad() {
super.viewDidLoad()
self.initUI()
}
override func didReceiveMemoryWarning() {
super.didReceiveMemoryWarning()
}
static func instance()->View3Controller{
let vc = View3Controller()
return vc
}
}
//snapkit
extension View3Controller {
func initUI() {
self.view.backgroundColor = .white
self.view.addSubview(self.footerView)
self.view.addSubview(self.bodyView)
view.setNeedsUpdateConstraints()
}
override func updateViewConstraints() {
if (!didSetupConstraints) {
/*
body
footer
*/
bodyView.snp.makeConstraints { (make) in
make.top.equalTo(self.view)
make.top.left.right.equalTo(self.view)
make.bottom.equalTo(self.footerView.snp.top)
}
footerView.snp.makeConstraints { (make) in
make.height.equalTo(100)
make.top.equalTo(self.bodyView.snp.bottom)
make.bottom.left.right.equalTo(self.view)
}
didSetupConstraints = true
}
super.updateViewConstraints()
}
}
결과 화면
https://github.com/choiks14/SnapkitTest
'swift > snapkit' 카테고리의 다른 글
| snapkit(7) (0) | 2017.06.25 |
|---|---|
| snapkit(6) (0) | 2017.06.25 |
| snapkit(4) (0) | 2017.06.18 |
| snapkit(3) (0) | 2017.06.18 |
| snapkit(2) (0) | 2017.06.18 |