//总列数
int totalColumns = 3;
//应用的尺寸
CGFloat appW = 85;
CGFloat appH = 90;
//间隙 = (屏幕的宽度 - 3*应用的宽) / 4
CGFloat marginX = (self.view.frame.size.width - totalColumns*appW) / (totalColumns+1);
CGFloat marginY = 15;
for (int index = 0; index<self.apps.count; index++) {
//1.创建view
AppView *appView = [AppView appView];
//让控制器成为appView的代理
appView.delegate = self;
//2.把appView添加到控制器
[self.view addSubview:appView];
//3.设置frame
//计算行号、列号
int row = index / totalColumns;
int col = index % totalColumns;
CGFloat appX = marginX + col * (appW + marginX);
CGFloat appY = 30 + row * (appH + marginY);
appView.frame = CGRectMake(appX, appY, appW, appH);
//4.设置数据
//取出模型
App *app = self.apps[index];
[appView setApp:app];
}
九宫格计算按钮frame的代码
最新推荐文章于 2024-04-30 15:25:49 发布