ios - 用户通话时不显示收藏 View 项目

标签 ios uicollectionview

我有一个 Collection View 。当我切换通话中状态栏时,当绿色的“您正在通话”状态栏可见时,我的收藏 View 项目会消失。当我离开酒吧时,他们会回来。

日志显示:“未定义 UICollectionViewFlowLayout 的行为,因为项目高度必须小于 UICollectionView 的高度减去部分插入的顶部和底部值。”

有没有人遇到过这种情况,您是如何解决的?我正在使用 sizeForItemAtIndexPath 如下:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
return self.collectionView.frame.size;
}

我应该使用其他东西来指定每个项目的大小吗?

最佳答案

对于任何其他经历过这种情况的人。这是定义项目大小的正确方法:

- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout sizeForItemAtIndexPath:(NSIndexPath *)indexPath {
return self.collectionView.frame.size;
}

您可能还可以在 collectionViewLayout 上设置 itemSize,但要使项目保持不变并且在通话时不会消失的关键是在 viewDidLayoutSubviews 中重新加载 Collection View :

[self.collectionView reloadData];

关于ios - 用户通话时不显示收藏 View 项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16285128/

相关文章:

ios - UiCollectionView 必须使用非 nil 布局参数初始化 Swift 3

ios - 两个 Collection View Cell 之间的转换

UITableView 上的 iOS Swift ReloadData 不会刷新 UITableViewCell 内部的 UICollectionView

objective-c - 应用程序在设备上启动时崩溃,但在模拟器上很好

ios - 未解析的标识符 "itemID"

ios - Mac OSX 开发常用的单用户数据库是什么?

ios - 适用于 iOS 9.0 及更高版本的 Firebase 动态链接无法使用对象 FIRDynamicLink 对象获取 URL。它给零值

ios - 由于 PanGesture 导致计时器滞后?

ios - 如何更改一个单元格的 UICollectionViewLayoutAttributes

ios - UICollectionView 不显示单元格和崩溃应用程序 Xcode 10.0