UICollectionView ClipsToBounds 无法与分页正常工作

问题描述 投票:0回答:2

我正在使用启用水平分页的 UICollectionView。
我的collectionView框架小于屏幕尺寸。

我使用了以下代码:

myCollectionView.clipsToBounds=FALSE;

我仍然无法看到 CollectionView 范围之外的视图。 我正在使用自定义

UICollectionViewLayout

ios uicollectionview
2个回答
6
投票

如果每页的大小大于或等于您的

collectionView
的框架大小,即使
clipToBounds
被禁用,您也将无法看到框架之外的内容。

为了节省内存,

collectionView
中的单元格是可重复使用的,如果它们超出框架,将被删除(即仅显示可见单元格)。

要重新创建像 App Store 上看到的效果:

尝试将

collectionView
的框架设置为与您的
collectionView
superView
一样大,并为您的
minimumLineSpacing
指定合适的
UICollectionViewFlowLayout

您可能想看看这篇关于

targetContentOffsetForProposedContentOffset:withScrollingVelocity
的文章,它为您提供了决定给定页面的
contentOffset
的控件。


-3
投票

我不确定,但可能是当你初始化你的collectionView时出现的问题,它使用一些默认设置(如clipToBounds)进行初始化。尝试这个方法来布局子视图:

-(void)layoutSubviews{
   [super layoutSubviews];
   myCollectionView.clipsToBounds = FALSE;
}

希望它有效。

© www.soinside.com 2019 - 2024. All rights reserved.