问题标签 [uicollectionview]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
6039 浏览

ios - performBatchUpdates 上的 UICollectionView 性能问题

我们正在尝试使用自定义布局设置 UICollectionView。每个 CollectionViewCell 的内容将是一个图像。总体而言,将有数千张图像,并且在某个特定时间可以看到大约 140-150 张图像。在一个动作事件上,所有单元格的位置和大小都可能重新组织。目标是为当前使用 performBatchUpdates 方法的所有移动事件设置动画。这会导致所有内容都被动画化之前的巨大延迟时间。

到目前为止,我们发现内部方法 layoutAttributesForItemAtIndexPath 为每个单元格(总共数千个)调用。此外,调用 cellForItemAtIndexPath 方法的单元格比实际显示在屏幕上的单元格多。

有没有可能提高动画的性能?


默认的 UICollectionViewFlowLayout 并不能真正提供我们想要在应用程序中实现的那种设计。这是我们的一些代码:

layoutAttributesForElementsInRect 遍历所有元素,为矩形内的所有元素设置 layoutAttributes。for 语句在第一个单元格超出矩形右下角定义的边界时中断:

在布局更改时,无论 layoutAttributesForElementsInRect 中定义的单元格数量是否有限,结果都几乎相同。如果系统没有限制,系统要么获取其中所有单元格的布局属性,要么调用所有缺失单元格的 layoutAttributesForElementAtIndexPath 方法(如果它是有限的)。总体而言,每个单元格的属性都在以某种方式使用。

0 投票
1 回答
4253 浏览

ios6 - UICollectionViewController 编辑

我可以通过按导航面板上的编辑按钮self.navigationItem.leftBarButtonItem = self.editButtonItem;来进入可编辑状态。UITableViewController

如何做出这样的行为UICollectionViewController

0 投票
4 回答
5624 浏览

objective-c - UICollectionView 中按钮的索引路径

我尝试过了:

但 NSLog 显示单元存在,但 indexpath 为 nil。

0 投票
6 回答
43550 浏览

objective-c - UICollectionView:如何在委托方法中设置特定项目后获取项目大小

我正在摆弄新的 UICollectionView 和 UICollectionViewLayout 类。我创建了一个自定义布局,继承 UICollectionViewFlowLayout。

我的单元格大小正在动态变化,我使用下面的委托方法设置项目大小

现在,在我的自定义 UICollectionViewFlowLayout 类的 prepareLayout 方法下,我需要访问这些大小变量,以便我可以计算如何放置它们并为 layoutAttributesForItemAtIndexPath 缓存它们。

但是,我似乎无法在 UICollectionView 或 UICollectionViewFlowLayout 下找到任何属性来达到我在委托方法中设置的自定义项目大小。

0 投票
7 回答
27712 浏览

iphone - UICollectionView 中的 iOS 断言失败

我收到错误...

尝试显示 UICollectionView 时。

导致它的线条是......

出队发生错误。

没有其他错误,所以我很难知道从哪里开始。

任何人都可以阐明这一点吗?

0 投票
1 回答
7824 浏览

iphone - 何时是更改 UICollectionView 的布局参数的适当轮换时刻

希望一个相对较新的UIKit控件的简单问题

我有一个UICollectionView具有viewLayout单行单元格的单元格,这些单元格是UICollectionView纵向模式下边界的确切高度

因此,当 iPad 翻转到横向模式时,该行变得比屏幕本身高,此时布局(几乎)默默地失败并抱怨该行高于边界。

操纵 viewLayout 特性的理想方法是什么,尤其是在它与响应 a 中的旋转有关时ViewController

0 投票
1 回答
5651 浏览

objective-c - UICollectionViewCell 上的按钮

新的类之一是,它允许以类似于 Homescreen / iBooks / Pages 布局的网格格式显示项目。

有没有办法在 UICollectionViewCell 上的按钮上接收触摸事件?目前,我的单元格是通过 XIB 文件创建的,并以编程方式添加到 UICollectionView。我正在寻找类似于 UITableView 上的 Detail Disclosure Indicator 的东西。

在这里查看 Apple 的文档后,我没有看到任何允许这样的方法,但我很肯定有办法做到这一点。

如何在 UICollectionViewCell 中添加一个按钮并在点击按钮时获取单元格的 indexPath?

是否有任何可能有用的教程或链接?iOS 6 相当新,所以我没有找到太多。提前致谢。

0 投票
5 回答
19864 浏览

ios - UICollectionViewCell 阴影颜色

在新的 UICollectionView 中,我看不到如何向 UICollectionViewCell 添加阴影。我该怎么办。我会添加另一个视图吗?

在此处输入图像描述

0 投票
14 回答
37463 浏览

objective-c - UICollectionView 断言失败

我在执行insertItemsAtIndexPaths时收到此错误UICollectionView

断言失败:

我已经检查过了,我的数据源只包含一个元素。关于为什么会发生这种情况的任何见解?如果需要更多信息,我绝对可以提供。

0 投票
1 回答
3452 浏览

objective-c - UICollectionView:自定义 UICollectionViewFlowLayout 标头(多个标头和标头位置)

我想将当前基于表格视图的数据网格转换为新UICollectionView类。

这就是我当前的网格的样子:

我当前基于表格视图的数据网格

我的网格有两个标题:

  • 年份(2006a、2007a 等)和
  • 类型(“收入”、“EBITDA”等)。

从 Apple 的文档中,我了解到我需要将FlowLayout 子类化以获取两个标题(Apple Documentation),特别是覆盖layoutAttributesForSupplementaryViewOfKind:atIndexPath:以支持新的补充视图(标题)。

但是,我没有找到任何有关如何执行此操作的示例或教程。由于我被困在这里,如果您能指出我正确编码的正确方向,我将不胜感激。

谢谢你。