【无限互联】IOS开发之瀑布流的实现(UICollectionView与UIScrollView) 瀑布流可以在保证图片原始比例的情况下,灵活的展现内容,相对于传统的使用相同大小的网格展现大量图片,要好上很多,而实现瀑布流的方式有很多种,网上比较流行的有三种实现方式
1,使用UIScrollView ,主要技术点在于视图的重用
2,使用UITableView ,这种方式应该是最易想到的,因为需要展现几列就用几个 tabelview就 ok 了,而且不需要考虑重用,应为苹果已经做好了,只需要考虑如何在几列 tabelView滑动的时候,保持同步不出现BUG
3,使用UICollectionView ,UICollectionView 在iOS6 中第一次被介绍,它与 UITableView有许多相似点,但它多了一个布局类,而实现瀑布流,就与这个布局类有关
此种方式实现,也不需要考虑视图重用
以上三种方式实现瀑布流,使用UICollectionView 应该算是最简单的了,so,就重最简单的开始吧
由于网络太差,所以展现的并不是网络上的图片,而是将用户相册中的图片读取出,并用瀑布流展现
首先,遍历用户相册,将照片放到准备好的数组中
访问用户相册需要导入框架 [o bjc] view plaincopy 1
_images = [NSMutableArray array]; 2
//创建相册库 3
library = [[ALAssetsLibrary alloc] init]; 4
[library enumerateGroupsWithTypes:ALAssetsGroupSavedPhotos usingBlock:^(ALAssetsGroup *group, BOOLBOOL *stop) { 6
if (group) { 7
[group