- 一般的步骤为:
- 1.设置格子的总个数和每一列的格子数
- 2.求格子的间隔:
- 水平间隔 = 视图总宽-每一个格子的宽*列数)/(列数+1)
- 竖直间隔 = 水平间隔
- 3.通过for循环,依次创建所有的格子并设置相应的图片,并且对每一个格子的位置进行设置
调用
override func viewDidLoad() {
super.viewDidLoad()
self.title = "传值"
self.view.backgroundColor = UIColor.white
CreatListBtn()
}
实现
func CreatListBtn() {
let Start_X :CGFloat = 20.0 // 第一个按钮的X坐标
let Start_Y :CGFloat = 100.0 // 第一个按钮的Y坐标
let Width_Space :CGFloat = 20.0 // 2个按钮之间的横间距
let Height_Space :CGFloat = 20.0 // 竖间距
let Button_Height :CGFloat = (kScreenWidth - 4*Height_Space)/3 // 高
let Button_Width :CGFloat = (kScreenWidth - 4*Width_Space)/3 // 宽
// 设置格子的间距
for i in 0..<9 {
let index : NSInteger = i % 3;
let page : NSInteger = i / 3;
var button = UIButton()
let x : CGFloat = CGFloat(index) * (Button_Width + Width_Space) + Start_X
let y : CGFloat = CGFloat(page) * (Button_Height + Height_Space)+Start_Y
button.frame = CGRect(x: x,y: y,width: Button_Width,height: Button_Height)
button.backgroundColor = UIColor.red
self.view.addSubview(button)
}
}
效果
FC76EDE1-FC99-4482-914D-F17D07D14754.png
So Easy