怎么写一个向左滑动的UICollectionView?

最近,遇到了一个奇怪的需求。页面大概是这个样子的,页面的右上方有一个在线人数列表,跟很多直播间类似,当有人进来时 列表+1个头像,当有人离去时 列表-1个头像,可以左右滑动,我第一时间想到的就是用UICollectionView去做。做完以后发现是这样的,头像在collectionView的左侧,当有第二个的时候,从左向右加一个头像。以此类推。当时想了下,没毛病啊,collectionView都是从左向右的。

怎么写一个向左滑动的UICollectionView?_第1张图片

但是产品小姐姐,死活不同意,说我要改成下面那样的。

怎么写一个向左滑动的UICollectionView?_第2张图片

当有人加入的时候,就变成这样


怎么写一个向左滑动的UICollectionView?_第3张图片


当加入的人多了,还要自动滑到最左边

怎么写一个向左滑动的UICollectionView?_第4张图片

虽然很奇怪,但是也难不倒我们,想的第一个解决办法就是我旋转整个collectionview 180度。然后旋转cell 180度。再把数据源逆序插入,最后在判断当数据源>能显示的个数时,直接滚动到最底部。

思路清晰了,那代码就简单了。

旋转collectionview部分

self.audienceCollectionView.transform = CGAffineTransformMakeRotation(M_PI);

旋转cell部分

self.contentView.transform = CGAffineTransformMakeRotation(M_PI);

数据源逆序 不贴代码了 很简单 

最后直接cell滚动到最左边

因为我们是旋转了180度,所以滚动到最左边 本质还是最右边。 另外在写滚动的时候,一定要注意判断数据源长度,不要越界。

怎么写一个向左滑动的UICollectionView?_第5张图片

你可能感兴趣的:(怎么写一个向左滑动的UICollectionView?)