iOS UICollectionView 记录

转载:http://wanqingwong.com/2015/04/30/ios-collection-1.html

UICollectionView将内容显示于一个一个的网络之中,对于展于一些属性相似的内容挺有用的。在用法上有些类似于UITableView。

在UICollectionView的属性设置中,可以直接设置出它的每行显示个数,大小等。但这个方法,当设备不一样时,这些具体参数就显得没啥用处了,所以我想在使用的时候,能根据不屏幕尺寸,自动适配宽度与高度。

解决办法,在视图进行加载之时,先调用一个视图设置方法,来根据自己的需要,计算出每个Cell的宽与高。

func setupView() {

let flowLayout = UICollectionViewFlowLayout()

var width = (view.bounds.size.width - 32)  / 2

// 左右间距

flowLayout.minimumInteritemSpacing = 1.0

// 上下行距

flowLayout.minimumLineSpacing = 16.0

// 格子尺寸

flowLayout.itemSize = CGSize(width: width, height: width)

// 上下右左周边的间距

flowLayout.sectionInset = UIEdgeInsets(top: 16, left: 8, bottom: 16, right: 8)

collectionView?.collectionViewLayout = flowLayout

}

对于width这个变量,可以根据需要,将后面的除数设置成你想要的一行的cell个数,比如,你想一行显示两个就除以2,三个就除以3,以此类推。

需要注意的是,如果每一行的个数调节之后,为了保持各个Cell间的间距看起来一致,还需要设置下那几个间距。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容