问题标签 [uicollectionviewdelegate]

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 投票
1 回答
4097 浏览

ios - UICollectionViewDelegateFlowLayout UICollectionViewFlowLayout 的区别

我知道 UICollectionViewDelegateFlowLayout 是一个协议,而 UICollectionViewFlowLayout 是一个类,我知道协议和类之间的区别。根据我的理解,我可以让一个类遵循 UICollectionViewDelegateFlowLayout 协议来实现与继承自 UICollectionViewFlowLayout 的类完全相同的效果。我通过找到协议和类之间的这种关系来得出这个结论: UICollectionViewDelegateFlowLayout ------------- UICollectionViewFlowLayout collectionView:layout:sizeForItemAtIndexPath:---- itemSize collectionView:layout:insetForSectionAtIndex:--- - sectionInset – collectionView:layout:referenceSizeForHeaderInSection: -- headerReferenceSize – collectionView:layout:referenceSizeForFooterInSection: -- footerReferenceSize

我还在协议的参考中阅读了以下内容:“此协议中的所有方法都是可选的。如果您不实现特定方法,则流布局委托使用其自身属性中的值来获取适当的间距信息”所以我的理解是:如果 CollectionView 有 layout 属性和 delegateFlowLayout,delegateFlowLayout 可能会覆盖某些东西。换句话说,我可以同时拥有两者,并且协议将具有更高的优先级。对?

那么,发明一个做同样事情的协议和一个类背后的逻辑是什么?

0 投票
1 回答
1963 浏览

ios - UICollectionViewCell 变为隐藏=YES

我正在尝试使用UICollectionView.

我通过像本教程中那样缓冲我的数据数组来做到这一点

然后通过以下方式实现didEndDisplayingCellof :UICollectionViewDelegate

}

问题是,每当didEndDisplayingCell调用该方法并且集合视图通过其委托方法请求一个单元格时CellForItemAtIndexPath,该单元格就会重新隐藏。

这是我的CellForItemAtIndexPath实现:

}

我在这里做错了什么?

0 投票
1 回答
13833 浏览

ios - UICollectionViewLayout layoutAttributesForElementsInRect 和 layoutAttributesForItemAtIndexPath

我正在实施自定义流程布局。它有 2 种主要的重写方法来确定单元格的位置:layoutAttributesForElementsInRectlayoutAttributesForItemAtIndexPath.

在我的代码中,layoutAttributesForElementsInRect被调用,但layoutAttributesForItemAtIndexPath不是。是什么决定了哪个被调用?在哪里layoutAttributesForItemAtIndexPath被调用?

0 投票
3 回答
23647 浏览

ios - UICollectionView 中的单元格间距 minimumInteritemSpacing

如何在 UICollectionView 的一部分中设置单元格间距?UICollectionView 有一个属性minimumInteritemSpacing,我需要设置 1.0 还是不行。我实现了委托方法。

0 投票
1 回答
213 浏览

ios - 如何在 UICollectionViewSectionHeader 中嵌入 UICollectionView

我的应用程序崩溃是因为

这是因为我的委托方法在我的内部UICollectionReusableView,而不是视图控制器。当我为 UICollectionView 设置委托时,如何在 a 中嵌入 UICollectionViewUICollectionViewSectionHeader并防止我的应用程序崩溃。

0 投票
1 回答
412 浏览

ios - UICollectionView Reload 不调用委托

我有一个UICollectionView连接到 myclassdatasourcedelegate. 当我调用[self.collectionview reloaddata]它时它正常工作,但过了一段时间(随机时间和次数)当我再次重新加载集合时它不再工作了。

集合引用委托和数据源已正确定义。

0 投票
0 回答
1525 浏览

ios - UICollectionViewFlowLayout 的严重错误:水平滚动模式下的 minimumInteritemSpacing 和 minimumLineSpacing

UICollectionView水平滚动模式下面临以下错误(iOS 8, iOS 7,我唯一测试过的)。

我的问题

我想听听你对这个错误的看法,以及我如何优雅地解决它。

设置

错误

这很难解释,但我会尽力而为。当 UICollectionView 中的单元格大小不同时,就会发生该错误。

  • 当所有单元格的大小相同时,它看起来像这样 在此处输入图像描述

  • 但是一旦其中一个单元格的大小与其他单元格不同,它看起来就像这样 在此处输入图像描述

因此,它似乎可以互换minimumInteritemSpacingand minimumLineSpacing

链接到一个最小的非工作示例

https://github.com/colasjojo/TEST_COLLECTION_VIEW_BUG

更多代码

0 投票
1 回答
42 浏览

swift - 编译器说我不符合 UICollectionViewDelegate;与实际使用冲突

我相信我正在关注 UICollectionViewDataSource,但编译器另有说明。
我错过了什么?

在此处输入图像描述

在此处输入图像描述

我有两 (2) 个 func 涵盖了所需的 API……但我收到了这个编译器错误。
为什么?

0 投票
1 回答
645 浏览

ios - 以编程方式开始使用 UICollectionViewController

我目前正在编写一个UICollectionViewController从服务器加载图像并将图像放入自定义UICollectionViewCellsUICollectionView. 为了让事情变得比现在更简单,我不从数据库中提取,我只是简单地创建一个存储在本地的图像数组。它可以工作,但由于某种原因,在我开始滚动之前,并非所有单元格都显示图像。

这是正在发生的事情的图像!

图片

我已经阅读了一些教程,但它们都使用storyboard......我想以编程方式编写这个。

继承人一些代码:

AppDelegate.m

JSMediaCell.m

我非常感谢任何人帮助我走上正确的轨道......就像提醒......当我开始滚动时,图像被重新加载,但并非所有单元格都加载了图像subview......只是一些。

0 投票
1 回答
419 浏览

ios - UICollectionView 在启用分页的情况下不会滚动完整的 320 点

好吧,可以说我有 20 个单元格的 UICollection 在启用分页的情况下水平滚动并且可以在每页上容纳 9 个单元格,当我将其设为 10 个单元格而不是创建第二个页面时,它的移动刚好足以容纳页面上的第 10 个单元格。我希望它在滚动时在自己的页面上显示第 10 个单元格。

我也尝试过更改 collectionview.contentsize 但出于某种原因,无论我做什么,它都保持不变。

这是我的代码 -