gpt4 book ai didi

ios - UICollectionVIew:如何删除顶部第一个单元格行的空间?

转载 作者:IT王子 更新时间:2023-10-29 07:40:41 35 4
gpt4 key购买 nike

我在 Interface Builder 中有这种安排,所有属性都设置为零。

enter image description here

但是,当我在设备和模拟器上运行它时,它看起来像这样

enter image description here

细胞上方的空间从何而来?

所以我尝试在这样的代码中为 UICollectionViewFlowLayout 设置这些属性

UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc] init];
layout.headerReferenceSize = CGSizeZero;
layout.footerReferenceSize = CGSizeZero;
layout.sectionInset = UIEdgeInsetsMake(0, 0, 0, 0);
layout.minimumInteritemSpacing = 0;
layout.minimumLineSpacing = 0;
layout.itemSize = CGSizeMake(103, 119);

self.calendarView.collectionViewLayout = layout;

但我没有运气。

我怎样才能摆脱那个空间?

最佳答案

UICollectionView 是具有 contentInset 属性的 UIScrollView 类的后代,设置 -20 top inset 解决了这个问题

[self.calendarView setContentInset:UIEdgeInsetsMake(-20, 0, 0, 0)];

但是,问题来自 UIViewController 的 automaticallyAdjustsScrollViewInsets 属性。通过文档:

Default value is YES, which allows the view controller to adjust its scroll view insets in response to the screen areas consumed by the status bar, navigation bar, and toolbar or tab bar. Set to NO if you want to manage scroll view inset adjustments yourself.

这就是我们调整状态栏内容插入的原因。与结果图片不匹配的手动设置值相比,禁用自动调整更好。

[self setAutomaticallyAdjustsScrollViewInsets:NO];

关于ios - UICollectionVIew:如何删除顶部第一个单元格行的空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23786198/

35 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com