在开发中,很多时候需要随机生成几行几列,那么就要用算法,其实这个是有规律的。今天,我们一起探讨下,有不对或者更简单的,望大家多多指教。
如题:请生成一个3*3的按钮
//计算按钮之间的间距
CGFloat spacex = (frame.size.width - 3 * kBtnW)/(3 + 1 +1.0);
CGFloat spacey = (frame.size.height - 3 *kBtnH)/(3 + 1+1.0);
//列
int cloS = 3;
//行
int rowS = 3;
for (int i = 0; i < 9; i++) {
int clo = i / cloS + 1;
int row = i % rowS + 1;
//计算 按钮的x,y
CGFloat btnx = spacex * clo + kBtnW * (clo - 1);
CGFloat btny = spacey * row + kBtnH * (row - 1);
btn = [UIButtonbuttonWithType:UIButtonTypeRoundedRect];
//设置按钮的frame
[btn setFrame:CGRectMake(btnx, btny, kBtnW, kBtnH)];
[_MyViewaddSubview:btn];
}
代码不多,但是好理解。