#define kTotalCount 5
#define kRowCount 4//每行的按钮个数
#define kBtnWidth 50
#define kBtnHeight 50
#define kRowSpace 5//间隔 行间距
#define kColumnSpace 20//列间距
int order = 0;
for (int i = 0; i < kTotalCount; i ++) {
const int placeIndex = i + 1;//可以在这里再加1,看看效果
const int row = placeIndex / kRowCount + (placeIndex % kRowCount == 0 ? 0 : 1);
const int column = (placeIndex % kRowCount) + (placeIndex % kRowCount == 0 ? kRowCount : 0);
const float x = (column-1)*kBtnWidth+column*kColumnSpace;
const float y = (row-1)*kBtnHeight+row*kRowSpace;
UIButton *btn = [UIButton buttonWithType:UIButtonTypeRoundedRect];
btn.tag = order + 1;
btn.frame = CGRectMake(x, y, kBtnWidth, kBtnHeight);
[btn addTarget:self action:@selector(onbuttonClick:) forControlEvents:UIControlEventTouchUpInside];
UIView *viewSub = [[UIView alloc]initWithFrame:CGRectMake(0, 40, 50, 10)];
viewSub.backgroundColor = [UIColor redColor];
[btn addSubview:viewSub];
[viewSub release];
[self.view addSubview:btn];
// order ++;
// [btn release];
viewSub.alpha = 0.1;
}
常用的网格布局算法
最新推荐文章于 2024-06-21 10:46:06 发布