简介 :本Demo包含网络解析,界面传值,图片缩放
1.本Demo主要用于展示图片,采用UICollectionViewController进行展示.创建工程后,自定义一个单元格,只包含一个imageView;
#pragma mark - ------ 自定义单元格 加了一个imageView;集合视图的用法和表视图的用法类似
@property (nonatomic,strong) UIImageView *imageView;
- (UIImageView *)imageView{
if (!_imageView) {
_imageView = [[UIImageViewalloc]initWithFrame:self.bounds];
[self.contentViewaddSubview:_imageView];
}
return_imageView;
}
创建一个继承于 UIViewController的 MainViewController;
在viewDidLoad中进行操作:
1.使用集合视图,首先要对视图整体进行一个总的布局,这里只是为了测试,并没有根据图片的大小进行自适应,若是要自适应,则就成为一个瀑布流,将在下一章中讲解;
创建一个数据源,保存数据;遵守集合视图的代理;
@interface MainViewController () <UICollectionViewDataSource,UICollectionViewDelegate>
@property (nonatomic,strong) NSMutableArray *datasource;
@end
对数据源进行懒加载;- (NSMutableArray *)datasource{
if (!_datasource) {
_datasource = [NSMutableArrayarray];
}
return_datasource;
}
- (void)viewDidLoad {
[superviewDidLoad];
//这个类存在的意义就是用于集合视图的布局,若是不考虑单元格的自适应(即瀑布流),可直接设置;会造成图像变形
UICollectionViewFlowLayout *flowLayout = [[UICollectionViewFlowLayoutalloc]init];
flowLayout.minimumInteritemSpacing =5;
flowLayout.minimumLineSpacing = 5;
flowLayout.itemSize =CGSizeMake((CGRectGetWidth(self.view.bounds) -15</