SnapKit是Swift的一个自动布局的框架,简答好用,代码量还少,地址:https://github.com/SnapKit/SnapKit
使用方法
向页面添加view:
let search=UISearchBar()
search.placeholder="搜索视频"
let table=UITableView()
table.backgroundColor=UIColor.blue
let slider1=UISlider()
let slider2=UISlider()
let label=UILabel()
label.text="筛选"
self.view.addSubview(table)
self.view.backgroundColor=UIColor.white
self.view.addSubview(search)
self.view.addSubview(slider1)
self.view.addSubview(slider2)
self.view.addSubview(label)
添加约束:
search.snp.makeConstraints({
(make) in
//宽度与父布局一致
make.width.equalToSuperview()
//高度为50
make.height.equalTo(50)
//顶部在安全区域的顶部
make.top.equalTo(view.safeAreaLayoutGuide.snp.top)
})
slider1.snp.makeConstraints({
(make) in
//顶部在搜索框的底部,距离5
make.top.equalTo(search.snp.bottom).offset(5)
//宽度50
make.width.equalTo(50)
//左边与父布局一致,即贴紧父布局左侧
make.left.equalToSuperview()
})
slider2.snp.makeConstraints({
(make) in
//顶部在搜索框的底部,距离5
make.top.equalTo(search.snp.bottom).offset(5)
//宽度50
make.width.equalTo(50)
//左边在slider1的后边,距离10,即跟在slider1的后面,间隔10
make.leading.equalTo(slider1.snp.trailing).offset(10)
})
table.snp.makeConstraints{
(make)in
//宽度与父布局一致
make.width.equalToSuperview()
//顶部在slider1的底部,距离10
make.top.equalTo(slider1.snp.bottom).offset(10)
//底部在安全区域的底部
make.bottom.equalTo(view.safeAreaLayoutGuide.snp.bottom)
}
label.snp.makeConstraints({
(make) in
//顶部在搜索框的底部,距离5
make.top.equalTo(search.snp.bottom).offset(5)
//右边与父布局一致,距离10
make.right.equalToSuperview().inset(10)
})
效果如图所示: