草庐IT

UiCollectionView

全部标签

ios - 是否可以增加 UICollectionViewLayout 视口(viewport)? (即在 UICollectionView 框架外加载 +2/-2 个单元格)

我有一个使用UICollectionView的全屏图片库。它被分页并且一切运行正常,但有一件事我不喜欢。单元格只有在进入可见视口(viewport)时才会被重复使用,并且在分配新图像时我会得到闪烁效果(对于当前行为来说是正常的)。如何指定一个比当前UICollectionView框架稍大的视口(viewport),以便加载和重用View外的+1/-1页面?当它们进入View时,它们已经被初始化并准备就绪,因此闪烁效果将消失。谢谢! 最佳答案 注意:这是假设垂直的,水平调整你可以让frame变大,然后添加一个contentInsetC

ios - 具有动态和静态单元格的 UICollectionView

我在IB上创建的collectionView上有一个自定义动态单元格,它将填充数组中的数据。我想在同一个CollectionViewIB上添加一个静态单元格。静态单元格是否有可能位于CollectionView的最后一个对象上,无论动态单元格的数组长度是多少,静态单元格都将被添加为最后一个对象? 最佳答案 这是执行此操作的代码。我尝试了这种方法...对于动态单元格和静态单元格...funcnumberOfSectionsInCollectionView(collectionView:UICollectionView)->Int{re

ios - 防止 UICollectionView 崩溃

我们的应用程序有UICollectionView并且它的dataSource字典会定期更新。我们永远不知道下一次更新何时会发生。用户点击按钮后可以调用CollectionView重新加载方法,也可以在网络请求成功后异步发生。鉴于上述信息,我们有可能在重新加载CollectionView并同时更新其数据源时出现竞争条件。我们甚至记录了以下崩溃,我们相信它是由于上述竞争条件而发生的。崩溃信息:***Terminatingappduetouncaughtexception'NSRangeException',reason:'***-[__NSArrayIobjectAtIndex:]:ind

ios - 在 UICollectionView 和 UITableView 中优化预加载/预取图像

我有一种我认为很常见但我希望很容易解决的情况-一个带有UICollectionView的应用程序,每个单元格中都有一个图像,该图像是通过http/https从Web服务器上的API获取的。我正在尝试实现iOS10的prefetchinginUICollectionView,以便提前请求可能需要的图像。在我看来,最佳预取应该满足各种要求:获取实际立即需要的图像的优先级应始终高于推测预取,即使图像已经在等待获取的队列中也是如此。当iOS告诉我们某个特定图像不再需要预取时,它(并且只有它)应该从预取队列中移除。如果请求图像,则应始终传送它,除非取消/所有/请求它(如果在多个单元格或多个Vie

ios - 为 UICollectionView 中的所有 UICollectionViewCell 设置动画

我想知道为UICollectionView中的所有单元格设置动画的好方法是什么。我正在尝试在UICollectionView中模拟编辑。所以我想要做的是缩小UICollectionViewCells的所有边界。所以我所拥有的是:-(IBAction)startEditingMode:(id)sender{[_itemsenumerateObjectsUsingBlock:^(idobj,NSUIntegeridx,BOOL*stop){NSIndexPath*indexPath=[NSIndexPathindexPathForRow:idxinSection:0];UICollecti

ios - UICollectionView 从右向左滚动(反向)

我想要一个从右到左滚动的UICollectionView,即当它在加载后出现在屏幕上时,CollectionView应该首先显示最右边的单元格/项目,然后将其余的添加到左边。我已经尝试了提供的解决方法here但是,如果我在viewWillAppear:中调用它,我会得到:***Assertionfailurein-[UICollectionViewDatalayoutAttributesForItemAtIndexPath:],/SourceCache/UIKit/UIKit-2372/UICollectionViewData.m:485如果我滚动到viewDidAppear:中的最后

ios - UICollectionView 单元格布局超出了 Collection View 的边界

我有一个UICollectionView,它使用FlowLayout来布置它的单元格。它是垂直滚动的。它填充一个320x480的屏幕并显示一个始终为96*96的自定义UICollectionViewCell-大小在InterfaceBuilder中设置,委托(delegate)不实现在每个项目的基础上设置项目大小的方法。左右各有10px的insets,最小间距设置为6px。因此,每条水平线有3个单元格。>=320。我遇到的问题是它偶尔会在一行中放置4个单元格!第4个单元格大部分不在屏幕上。然后它仅在下一行放置2个单元格以进行补偿。流式布局的全部意义在于它是一种换行式布局,不应将任何内容

ios - 在部分之间重新排列项目时 UICollectionView 崩溃

我在UICollectionView中的各个部分之间设置动画更改时遇到问题,我的程序不断崩溃,这是怎么回事?我有一个包含四个部分的CollectionView:0:A1:B2:C3:D我想将其转换为只有三个部分具有相同的项目:0:A1:B,C2:D我想为这种转变制作动画://InitialstateNSArray*source=@[@[@"A"],@[@"B"],@[@"C"],@[@"D"]];//Somedatasourcemethods-(NSInteger)collectionView:(UICollectionView*)collectionViewnumberOfItems

ios - 捏合手势以展开 UICollectionView Cell

我正在开发的应用程序需要与iPad上的照片应用程序非常相似的布局。有一个UIView网格,用户应该能够将手指捏合到一个网格中,当他们捏合时,观察该View的大小逐渐变大,直到全屏显示。到目前为止,我已经设置了一个UICollectionViewController和一个自定义CollectionView单元格。我将捏合手势识别器添加到自定义单元格中。当用户捏合时,单元格会变大。我现在遇到的问题是,单元格在扩展时并未叠加在所有其他单元格之上。相反,它隐藏在其后加载的单元格下。我在想解决方案可能是当CollectionViewController识别到捏合手势时,它可以隐藏被捏合的单元格。

ios - zIndex 中的 UICollectionView 顶部单元格未选择重叠单元格

我有一个UICollectionView,其中包含许多相互重叠的单元格。我在UICollectionViewLayout子类中使用UICollectionViewLayoutAttributes设置它们的zIndex,以便它们在视觉上以所需的顺序出现。当点击单元格的重叠区域时,具有更高zIndex的单元格通过collectionView:didSelectItemAtIndexPath:方法出现,触摸均匀的命中区域按预期工作。我转换到UICollectionViewFlowLayout子类,当我转换回第一个UICollectionViewLayout子类时,具有更高zIndex的单元格