ios snapkit

今天介绍的是一个三方库. SnapKit 是在iOS开发中使用添加约束的纯代码库, 使用Swift语言进行编写. 跟Masonry基本一样, 详细点击READ MORE.

1
2
3
4
5
6
7
8
9
var redView = UIView()
var yellowView = UIView()
var greenView = UIView()
var blackView = UIView()
var purpleView = UIView()
var cyanView = UIView()
var grayViewBtn = UIButton()
var leftView = UIView()
var rightView = UIView()

在viewdidload中进行一些设置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
redView.backgroundColor = UIColor.redColor()
yellowView.backgroundColor = UIColor.yellowColor()
greenView.backgroundColor = UIColor.greenColor()
blackView.backgroundColor = UIColor.blackColor()
purpleView.backgroundColor = UIColor.purpleColor()
cyanView.backgroundColor = UIColor.cyanColor()
grayViewBtn.backgroundColor = UIColor.grayColor()
leftView.backgroundColor = UIColor.cyanColor()
rightView.backgroundColor = UIColor.orangeColor()
view.addSubview(redView)
view.addSubview(yellowView)
view.addSubview(greenView)
view.addSubview(blackView)
view.addSubview(purpleView)
view.addSubview(cyanView)
view.addSubview(grayViewBtn)
view.addSubview(leftView)
view.addSubview(rightView)
grayViewBtn.setTitle("PopLabel", forState: UIControlState.Normal)
grayViewBtn.addTarget(self, action:
// 进行约束
blackView.snp_makeConstraints { make in
make.center.equalTo(view)
make.size.equalTo(CGSizeMake(100.0, 100.0))
}
redView.snp_makeConstraints { make in
make.top.equalTo(blackView.snp_bottom).offset(20.0)
make.left.equalTo(20.0)
make.size.equalTo(CGSizeMake(100.0, 100.0))
}
yellowView.snp_makeConstraints { make in
make.top.equalTo(blackView.snp_bottom).offset(20.0)
make.left.equalTo(blackView.snp_right).offset(20.0)
make.size.equalTo(CGSizeMake(100.0, 100.0))
}
purpleView.snp_makeConstraints { make in
make.bottom.equalTo(blackView.snp_top).offset(-20.0)
make.left.equalTo(blackView.snp_right).offset(20.0)
make.size.equalTo(CGSizeMake(100.0, 100.0))
}
greenView.snp_makeConstraints { make in
make.bottom.equalTo(blackView.snp_top).offset(-20.0)
make.right.equalTo(blackView.snp_left).offset(-20.0)
make.size.equalTo(CGSizeMake(100.0, 100.0))
}
// cyan
cyanView.snp_makeConstraints(closure: { (make) in
make.top.equalTo(redView.snp_bottom).offset(20.0)
make.centerX.equalTo(view)
make.size.equalTo(CGSizeMake(100.0, 100.0))
})
// gray
grayViewBtn.snp_makeConstraints(closure: { (make) in
make.bottom.equalTo(greenView.snp_top).offset(-20.0)
make.centerX.equalTo(view)
make.size.equalTo(CGSizeMake(100.0, 100.0))
})
//
leftView.snp_makeConstraints(closure: { (make) in
make.top.equalTo(greenView.snp_bottom).offset(20.0)
make.bottom.equalTo(redView.snp_top).offset(-20.0)
make.left.equalTo(view.snp_left).offset(5)
make.width.equalTo(50)
})
rightView.snp_makeConstraints(closure: { (make) in
make.top.equalTo(purpleView.snp_bottom).offset(20.0)
make.bottom.equalTo(yellowView.snp_top).offset(-20.0)
make.right.equalTo(view.snp_right).offset(-5)
make.width.equalTo(leftView)
})

微信公众号 得到最快最新的推送