我使用IB添加了UICollectionViewController
。然后我在代码中添加了UINavigationBar
:
UINavigationBar *navBar = [[UINavigationBar alloc] init];
[navBar setFrame:CGRectMake(0, 20, self.view.frame.size.width, 44)];
[navBar setDelegate:self];
[self.view addSubview:navBar];
除了导航栏隐藏了集合视图内容这一事实外,一切正常。它不仅会在导航栏下方滚动,而且实际上会在首次加载时显示在导航栏下方。
我该如何解决?
答案 0 :(得分:0)
为什么使用独立的导航栏?这可能是一个坏主意。将视图控制器嵌入到UINavigationController中,并确保将UICollectionView的顶部约束设置为顶部布局指南而不是视图。
答案 1 :(得分:0)
尝试更改集合视图的内容偏移量。我会尝试44(导航栏的高度)或64(导航栏的高度+状态栏)
答案 2 :(得分:0)
您的问题是在UINavigationBar
self.view
上添加UICollectionView
。
您可以将简单UIViewController
与UICollectionView
一起用作其视图的子视图。然后,在添加UINavigationBar
后,您必须更改collectionView.frame
。