// 设个宏,图片的宽和高都为40
#define kImgWH 40
- (void)viewDidLoad
{
[super viewDidLoad];
// 1.定义列数和间距
// 每行3列
int columns = 3;// 可以通过修改列数的值改变图片排列布局
// 每个图片之间的间距 = (控制器View的宽度 - 列数 * 表情的宽度) / (列数 + 1)
CGFloat margin = (self.view.frame.size.width - columns * kImgWH)/(columns + 1);
// 2.定义第一个表情的位置
// 第一个图片的x值
CGFloat firstImageX = margin;
// 第一个图片的y值
CGFloat firstImageY = 100;
// 3.创建9张图片
for (int i = 0; i < 9; i++) {
int imageNumber = i % 9;// 一共有9张图片(0~8)
NSString *imageName = [NSString stringWithFormat:@"图片%d.png",imageNumber];
// i这个位置对应的列数
int col = i % columns;
// i这个位置对应的行数
int row = i / columns;
// 列数 (col) 决定了x
CGFloat x = firstImageX + col * (kImgWH + margin);
// 行数 (row) 决定了y
CGFloat y = firstImageY + row * (kImgWH + margin);//假设图片的横竖间距都是margin
UIImageView *imageView = [[UIImageView alloc]init];
imageView.frame = CGRectMake(x, y, kImgWH, kImgWH);
imageView.image = [UIImage imageNamed:imageName];
[self.view addSubview:imageView];
}
}
图片排列
最新推荐文章于 2021-07-12 22:36:14 发布