问题标签 [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.
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 可能会覆盖某些东西。换句话说,我可以同时拥有两者,并且协议将具有更高的优先级。对?
那么,发明一个做同样事情的协议和一个类背后的逻辑是什么?
ios - UICollectionViewCell 变为隐藏=YES
我正在尝试使用UICollectionView
.
然后通过以下方式实现didEndDisplayingCell
of :UICollectionViewDelegate
}
问题是,每当didEndDisplayingCell
调用该方法并且集合视图通过其委托方法请求一个单元格时CellForItemAtIndexPath
,该单元格就会重新隐藏。
这是我的CellForItemAtIndexPath
实现:
}
我在这里做错了什么?
ios - UICollectionViewLayout layoutAttributesForElementsInRect 和 layoutAttributesForItemAtIndexPath
我正在实施自定义流程布局。它有 2 种主要的重写方法来确定单元格的位置:layoutAttributesForElementsInRect
和layoutAttributesForItemAtIndexPath
.
在我的代码中,layoutAttributesForElementsInRect
被调用,但layoutAttributesForItemAtIndexPath
不是。是什么决定了哪个被调用?在哪里layoutAttributesForItemAtIndexPath
被调用?
ios - UICollectionView 中的单元格间距 minimumInteritemSpacing
如何在 UICollectionView 的一部分中设置单元格间距?UICollectionView 有一个属性minimumInteritemSpacing
,我需要设置 1.0 还是不行。我实现了委托方法。
ios - 如何在 UICollectionViewSectionHeader 中嵌入 UICollectionView
我的应用程序崩溃是因为
这是因为我的委托方法在我的内部UICollectionReusableView
,而不是视图控制器。当我为 UICollectionView 设置委托时,如何在 a 中嵌入 UICollectionViewUICollectionViewSectionHeader
并防止我的应用程序崩溃。
ios - UICollectionView Reload 不调用委托
我有一个UICollectionView
连接到 myclassdatasource
和delegate
. 当我调用[self.collectionview reloaddata]
它时它正常工作,但过了一段时间(随机时间和次数)当我再次重新加载集合时它不再工作了。
集合引用委托和数据源已正确定义。
ios - UICollectionViewFlowLayout 的严重错误:水平滚动模式下的 minimumInteritemSpacing 和 minimumLineSpacing
我UICollectionView
在水平滚动模式下面临以下错误(iOS 8
, iOS 7
,我唯一测试过的)。
我的问题
我想听听你对这个错误的看法,以及我如何优雅地解决它。
设置
错误
这很难解释,但我会尽力而为。当 UICollectionView 中的单元格大小不同时,就会发生该错误。
当所有单元格的大小相同时,它看起来像这样
但是一旦其中一个单元格的大小与其他单元格不同,它看起来就像这样
因此,它似乎可以互换minimumInteritemSpacing
and minimumLineSpacing
。
链接到一个最小的非工作示例
https://github.com/colasjojo/TEST_COLLECTION_VIEW_BUG
更多代码
swift - 编译器说我不符合 UICollectionViewDelegate;与实际使用冲突
我相信我正在关注 UICollectionViewDataSource,但编译器另有说明。
我错过了什么?
我有两 (2) 个 func 涵盖了所需的 API……但我收到了这个编译器错误。
为什么?
ios - 以编程方式开始使用 UICollectionViewController
我目前正在编写一个UICollectionViewController
从服务器加载图像并将图像放入自定义UICollectionViewCells
的UICollectionView
. 为了让事情变得比现在更简单,我不从数据库中提取,我只是简单地创建一个存储在本地的图像数组。它可以工作,但由于某种原因,在我开始滚动之前,并非所有单元格都显示图像。
这是正在发生的事情的图像!
我已经阅读了一些教程,但它们都使用storyboard
......我想以编程方式编写这个。
继承人一些代码:
AppDelegate.m
:
JSMediaCell.m
:
我非常感谢任何人帮助我走上正确的轨道......就像提醒......当我开始滚动时,图像被重新加载,但并非所有单元格都加载了图像subview
......只是一些。
ios - UICollectionView 在启用分页的情况下不会滚动完整的 320 点
好吧,可以说我有 20 个单元格的 UICollection 在启用分页的情况下水平滚动并且可以在每页上容纳 9 个单元格,当我将其设为 10 个单元格而不是创建第二个页面时,它的移动刚好足以容纳页面上的第 10 个单元格。我希望它在滚动时在自己的页面上显示第 10 个单元格。
我也尝试过更改 collectionview.contentsize 但出于某种原因,无论我做什么,它都保持不变。
这是我的代码 -