九宫格计算按钮frame的代码

来源:互联网 发布:知乎live可以回看吗 编辑:程序博客网 时间:2024/05/01 18:29
//总列数    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];    }

0 0