ios 九宫格图片的展示实现
程序员文章站
2022-03-09 18:06:56
...
今天分享的是多图添加的代码,像微博和微信那些9图显示有一个问题就是每个微博或朋友圈的图片显示数量是不定的,这样我们就不能一开始就写好imageView的位置和数量,要先知道有多少个图片,再根据图片的数量去init imageView,实现效果大概如下
代码如下
- (void)addImages{
NSArray*imageArray = [[NSArrayalloc]init];//储存图片的数组
NSIntegerimageCount =0;//已添加图片
//图片的宽高
CGFloatwidth =100;
CGFloatheight =100;
CGFloatmarign =50;//距离边框的距离
CGFloatimageMarign =10;//图片的间隔
while(imageCount< imageArray.count) {
NSIntegeri = imageCount%3;//第几列
NSIntegerj = imageCount/3;//第几行
UIImage*image = imageArray[imageCount];
UIImageView*imageView = [[UIImageViewalloc]init];
imageView.image= image ;
imageView.frame=CGRectMake(marign+i*(width+imageMarign), marign+j*(height+marign), width, height);
[self.viewaddSubview:imageView];
· imageCount ++;
}
}
这个代码的最关键的地方是确定是第几个图片,我是用第几行第几列来确定的,然后他的x,y位置就可以用i,j,width,height,marign,imagemarign所组成的整式来表示。这样子就可以实现多图的显示效果,如果用sd_AutoLayout会简单一些。
下一篇: 9.3-grep命令(下)