前言
碰到要写照片墙的问题,因为九宫格(UICollectionView)使用的并不熟练,所以尝试用UIScrollView编写,并用该方法可使用手势(UITapGestureRecognizer)获取第一张点击的图片,对于上传图片时需要返回第一张选中的图片有妙效
代码比较简单就不写思路了,关键步骤会有注释
//创建一个UIScrollView
UIScrollView *imageScrollView = [[UIScrollView alloc] init];
imageScrollView.frame = CGRectMake(10, 0, 395, 600);
imageScrollView.contentSize = CGSizeMake(395, 600 * 1.5);
imageScrollView.showsVerticalScrollIndicator = NO;
//打开交互模式(方便手势的使用)
imageScrollView.userInteractionEnabled = YES;
for(int i = 0; i < 30; i++){
//加入图片
NSString *strName = [NSString stringWithFormat:@"image-%d.jpg", i + 1];
UIImage *image = [UIImage imageNamed: strName];
UIImageView *imageView = [[UIImageView alloc] initWithImage:image];
//图片的位置,4为一行显示的图片数,图片之间留有5 的余地
imageView.frame = CGRectMake(2 + (i % 4) * 100, (i / 4) * 110 + 5 , 95, 105);
//将图片显示在UIScrollView上
[imageScrollView addSubview: imageView];
//打开图片的交互模式
imageView.userInteractionEnabled = YES;
}
//将UIScrollView显示在self.view 上
[self.view addSubview:imageScrollView];