UICollectionView 在 iOS 11 上覆盖全屏
Posted
技术标签:
【中文标题】UICollectionView 在 iOS 11 上覆盖全屏【英文标题】:UICollectionView covers full screen on iOS 11 【发布时间】:2019-05-10 05:53:46 【问题描述】:我有一个以前从未遇到过的奇怪问题。我有一个UICollectionView
,而不是UIViewController
。 UICollectionView
覆盖屏幕的 2/3 并在底部对齐。我在集合视图上方有一个搜索控件。虽然它在ios 12
上完美运行,但 UICollectionView 覆盖了整个屏幕,搜索控件在iOS 11
中不再可见。
我的视图中没有导航栏,我想知道是什么原因造成的。
- (void)viewDidLoad
UICollectionViewFlowLayout *layout = [[UICollectionViewFlowLayout alloc]init] ;
layout.scrollDirection = UICollectionViewScrollDirectionVertical ;
layout.minimumLineSpacing = 0 ;
layout.minimumInteritemSpacing = 0 ;
self.collectionView.collectionViewLayout = layout ;
self.collectionView.delegate = self ;
self.collectionView.dataSource = self ;
self.collectionView.allowsMultipleSelection = YES ;
self.searchBar.delegate = self;
//Number of rows in collectionview
- (NSInteger)collectionView:(UICollectionView *)collectionView numberOfItemsInSection:(NSInteger)section
return 11;
//Bottom space for collection view
- (CGSize)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout *)collectionViewLayout referenceSizeForFooterInSection:(NSInteger)section
return CGSizeMake(0, 50) ;
编辑:禁忌图片
【问题讨论】:
你是如何添加搜索栏的? 搜索栏和集合视图都被添加到情节提要中,并带有它们的约束。 @PrashantTukadiya 约束看起来很好,没有隐藏搜索栏。您可以调试视图层次结构,以便查看您的搜索栏和按钮搜索详细信息在哪里。 【参考方案1】:在你的约束中试试这个
Search Bar.top = Safe Area.top
希望这会有所帮助。
【讨论】:
以上是关于UICollectionView 在 iOS 11 上覆盖全屏的主要内容,如果未能解决你的问题,请参考以下文章
iOS 11 UICollectionView顶部出现白色间隔的问题
Swift 3 - iOS 11.2上的UICollectionview问题
为啥 UICollectionView 在 Xcode 11 (ios 13) 中省略 Line/Intrim 间距?
iOS 11 下 UICollectionView 的HeaderView 遮挡滚动条