我在我的应用程序中使用UINavigationController,它工作得相对较好。在我的集合视图中显示标题时,导航栏似乎已设置在堆栈中更高的位置,允许在其下面呈现内容。
有谁知道我如何在导航栏下面而不是在它下面渲染标题?
任何帮助都非常感谢!
修改
如果有帮助,我运行了以下命令:
NSLog(@"Navigation Bar Bounds %@", NSStringFromCGRect(self.navigationController.navigationBar.bounds));
NSLog(@"Navigation Bar Frame %@", NSStringFromCGRect(self.navigationController.navigationBar.frame));
NSLog(@"Collection View Bounds %@", NSStringFromCGRect(self.collectionView.bounds));
NSLog(@"Collection View Frame %@", NSStringFromCGRect(self.collectionView.frame));
输出如下:
[4058:907] Navigation Bar Bounds {{0, 0}, {320, 44}}
[4058:907] Navigation Bar Frame {{0, 20}, {320, 44}}
[4058:907] Collection View Bounds {{0, 0}, {320, 504}}
[4058:907] Collection View Frame {{0, -22}, {320, 504}}
编辑结束
我上传了以下图片来说明问题:
故事板内部:
当应用程序加载以及导航栏隐藏的内容时:
完整故事板,显示导航控制器和根视图控制器。 UICollectionView是HomeViewController.h文件中的IBOutlet。
答案 0 :(得分:1)
我认为您需要将ViewController的“tob bar”更改为“Navigation Bar”,并将控件放在其上
检查此图片