
每个图像应以屏幕大小显示,因此一个单元格具有屏幕宽度. flowLayout的minimumInterItemSpacing为25.
所以现在的问题是,如果我正在滚动,集合视图不会滚动到下一个图像的开头,而是滚动到interItemSpacing的开头.
我们举个例子:
Image/Cell wIDth = 320CollectionVIEw's interItemSpacing = 25
如果我滚动一页,则滚动视图内容偏移为320而不是345意味着第二个单元不在屏幕的中心.
如何解决这个问题?有什么建议?
解决方法 好的,我发现的是,有两个选项可以实现正确的滚动.1. UICollectionVIEwController大小
通过添加所需的值作为interItemSpacing来增加集合视图及其项目的大小.
这是一些代码:
- (voID) setupCollectionVIEw;{ PSTCollectionVIEwFlowLayout *flowLayout = [[PSTCollectionVIEwFlowLayout alloc] init]; CGSize itemSize = self.vIEw.bounds.size; itemSize.wIDth +=25; [flowLayout setItemSize:itemSize]; [flowLayout setScrollDirection:PSTCollectionVIEwScrollDirectionHorizontal]; flowLayout.minimumInteritemSpacing = 0.0f; flowLayout.minimumlinespacing = 0.0f; self.collectionVIEw = [[PSTCollectionVIEw alloc] initWithFrame:self.vIEw.bounds collectionVIEwLayout:flowLayout]; [self.collectionVIEw registerClass:[AMDetailimageCell class] forCellWithReuseIDentifIEr:AMDetailimageCellIDentifIEr]; self.collectionVIEw.delegate = self; self.collectionVIEw.dataSource = self; self.collectionVIEw.pagingEnabled = YES; CGRect rectSize = self.vIEw.bounds; rectSize.size.wIDth +=25; self.collectionVIEw.frame = rectSize; [self.vIEw addSubvIEw:self.collectionVIEw]; [self scrollToStartIndex]; }
2. SectionEdgeInset
制作一个页面=一个部分并使用sectionEdgeInset会产生相同的解决方案但是 – 当然 – 并不总是一个选项!
总结以上是内存溢出为你收集整理的iphone – UICollectoinView水平滚动与项目间距全部内容,希望文章能够帮你解决iphone – UICollectoinView水平滚动与项目间距所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
微信扫一扫
支付宝扫一扫
评论列表(0条)