问题标签 [uicollectionviewlayout]

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 投票
0 回答
1493 浏览

ios6 - CATransform3D 未在自定义 UICollectionViewFlowLayout 中正确应用

我对自定义 UICollectionViewFlowLayout 有一个奇怪的问题,我的单元格包含一个 imageView,我对我的单元格应用了缩放效果......但是我认为我在缩放效果上做错了,这很奇怪,因为我的单元格得到正确缩放,问题是某些单元格的 imageView 不是。

这是此问题的相关代码(我认为),(请注意,如果我删除方法:- (NSArray *)layoutAttributesForElementsInRect:(CGRect)rect或 CATransform3DMakeScale,问题似乎不会出现。)

自定义布局继承自 UICollectionViewFlowLayout

随着 FlowLayout 的出现,一切看起来都很好。

图 1

然后我开始滚动,我注意到右侧单元格的背景层开始炫耀(背景颜色为橙色

图 2

如您所见,在两个单元格之后,第三个单元格(开始出现,再次看起来正常)。

图 3

也许这是单元队列和出队的问题(以及被重用的 imageView 还是什么?)。

0 投票
16 回答
54483 浏览

ios - UICollectionView 布局问题

我正在使用UICollectionView流布局。我也做了一个习惯UICollectionViewCell。但是在运行项目时,控制台不断抛出这个错误——

我已确保单元格的大小是正确的

有没有人能够解决这个问题。

0 投票
1 回答
1090 浏览

ios - 自定义 UICollectionViewFlowLayout 上的插值问题

我遇到了自定义 UICollectionViewFlowLayout 的问题

就像这个视频显示问题视频一样,当我的单元格反弹回中心 (0:12 - 0:16) 时,我的变换插值失败,它跳到 1 帧的中心位置。

我隔离了这个问题,它在什么时候表现出来distanceToCenterX == 0.0f(下面的代码)

这是printfdistanceToCenterX中央单元格的此方法的多次调用:

您可以看到它是如何从-88.50000.00非常突然地跳跃的,我可以做些什么来平滑过渡并避免 1 帧跳跃?

代码(免责声明,取自 Apple 示例和Github 项目

我能做些什么来避免这种情况发生?

0 投票
2 回答
42349 浏览

ios - 从 UICollectionView 中删除单元格而不从顶部重新加载

我在我的 ios 应用程序中使用 CollectionView。每个集合单元格都包含一个删除按钮。通过单击按钮,应删除单元格。删除后,该空间将被下面的单元格填充(我不希望重新加载 CollectionView 并再次从顶部开始)

如何使用自动布局从 UICollectionView 中删除特定单元格?

0 投票
1 回答
399 浏览

objective-c - UIImageView 在 UICollectionViewCell 上自动调整大小,没有明显的原因

我正在尝试使用 显示一些图像UICollectionView,我已经有了我想要的动画(放大“活动”单元格),当我只使用单元格时它工作得很好。当我将图像添加到单元格时,它会在第一次加载时按预期工作UIViewController,但是在我滚动浏览它之后会UIImages自动调整一些大小,并且它会搞砸整个事情。知道为什么会发生这种情况吗?这是我用来做动画的代码(自定义布局):

这是它如何开始以及在我滚动浏览它后如何结束的图像: 第一次加载

滚动后

0 投票
1 回答
566 浏览

ios6 - UICollectionView 在旋转时重新排列单元格

我想UICollectionView在我的设备旋转期间重新排列单元格,就像evernote iPads app在笔记中所做的那样。在默认实现中,只有单元格的淡入和淡出,但我希望单元格在旋转期间四处移动。

实现类似动画的推荐方法是什么?我需要创建自定义UICollectionViewLayout吗?

0 投票
1 回答
2613 浏览

ios - UICollectionViewFlowLayout Voice Over 使用 Flow Layout 乱序读取项目

我有两个关于可访问性和 UICollectionViews 的问题,希望得到一些专家的帮助。另一个关于节标题的问题可以在这里找到。我创建了一个示例项目来演示这两个问题。

我有一个包含可变高度项目的UICollectionView使用。UICollectionViewFlowLayoutUIFlowLayout 将每行的元素垂直居中。不幸的是,当启用 Voice Over 时,它似乎偏向于垂直放置较高的元素,导致它无序地读取项目。

您可以拉取这个示例项目,运行它,启用配音,然后在项目中滑动以查看问题。它创建具有随机高度的单元格,因此很可能会乱序读取单元格。

有没有办法让集合视图按顺序通过项目?我觉得这是唯一有意义的方法,但我找不到强制执行这种行为的方法。将集合视图设置为对子视图进行分组似乎没有帮助。任何帮助将不胜感激。

0 投票
1 回答
1936 浏览

ios - iOS UiCollectionView - 使用自定义 UiCollectionViewLayout 重新加载数据

我正在尝试使用自定义 UiCollectionViewLayout 但我有一个小问题。在我的项目中,我想加载一些 JSON 信息并将其呈现在 UICollectionView 中。我需要从 WEB 加载信息,然后(当所有内容都加载后)我需要重新加载我的 Collection View。如果我使用UICollectionViewFlowLayout一切都很好。但是,当我尝试使用自己的布局时,reloadData它无法正常工作并且没有任何反应。

我正在使用异步任务重新加载数据:

谢谢

0 投票
7 回答
24776 浏览

ios - UICollectionViewFlowLayout 在方向更改时不会失效

我有一个带有 UICollectionViewFlowLayout 的 UICollectionView。我还实现了 UICollectionViewDelegateFlowLayout 协议。

在我的数据源中,我有一堆 UIViewControllers 响应自定义协议,所以我可以询问它们的大小和其他一些东西。

在 FlowLayout 委托中,当它要求 sizeForItemAtIndexPath: 时,我返回从我的协议中获得的项目大小。实现我的协议的 ViewControllers 根据方向返回不同的项目大小。

现在,如果我将设备方向从纵向更改为横向没有问题(横向项目较大)但如果我将其更改回来,我会收到此警告:

它仍然有效,但我不喜欢它收到警告,所以也许你可以告诉我我做错了什么。还有另一个问题。如果我不告诉我的 collectionViews collectionViewLayout 在 willAnimateRotationToInterfaceOrientation 中无效: sizeForItemAtIndexPath: 永远不会被调用。

希望你明白我的意思。如果您需要更多信息,请告诉我:)

0 投票
1 回答
311 浏览

ios - UICollectionViewFlowLayout 部分作为列而不是行

我正在尝试创建一个包含两列(长度可能不同)的 UICollectionView,其属性是当删除一个单元格时,下面的单元格(而不是右侧的单元格)会向上移动以取代它的位置。我考虑过使用 layoutAttributesForElementsInRect 等自定义布局,但如果有更简单的方法,我不想这样做。

基本上我需要的是标准 FlowLayout 的转置,每个部分都是一个新列而不是一个新行。任何建议将不胜感激。