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 |