开发过程中经常会用到九宫格,所以封装了一下,供大家使用
宏定义:
#define LSCREENW [UIScreen mainScreen].bounds.size.width
#define BtnW 50
#define BtnH 50
#define oneY 100
方法:
/**
* 九宫格的封装
*
* @param listNum 列数
* @param num 总数
*/
-(void)adjustOfListNum:(int)listNum num:(NSUInteger)num
{
//间隔宽度
int interval = (LSCREENW - listNum * BtnW) / (listNum + 1);
//获取第一个btn的坐标
CGFloat oneX = interval;
for (int i = 0; i < num; i++)
{
//获取每个图片的行数
int line = i / listNum;
//获取每个图片的列数
int list = i % listNum;
UIButton * btn = [[UIButton alloc] initWithFrame:CGRectMake(oneX + (BtnW + interval) * list, oneY + (BtnH + interval) * line, BtnW, BtnH)];
[btn setBackgroundColor:[UIColor cyanColor]];
[self.view addSubview:btn];
}
}