繁体   English   中英

iOS 13 新页面表格/表格表格导航栏高度

[英]iOS 13 new pageSheet/formSheet navigationBar Height

从下图可以看出,iOS 13 采用 XCode 11 构建的新呈现风格使得导航栏的高度(56 高度)与呈现的“全屏”(44 高度)不同。

这里的问题是我的应用程序正在使用自定义的书面导航栏,自定义导航栏的高度是使用UINavigationController.navigationBar.frame.height计算的,默认为 44 高度。 我们正在尝试采用新的演示风格,但我想不出解决方法。 我想我也没有涵盖大标题导航栏和紧凑导航栏等情况。 任何帮助将不胜感激。

归功于:https://medium.com/@hacknicity/view-controller-presentation-changes-in-ios-13-ac8c901ebc4e

在此处输入图像描述 2)presentationStyle.pageSheet 中 navigationBar 高度为 56 的图像

在此处输入图像描述 3)presentationStyle.fullScreen 中 navigationBar 高度为 44 的图像

这似乎是 iOS 中的一个错误,我已经使用了这个解决方法,但我在viewDidLoad而不是viewWillAppear中调用它,因为后者仅在视图 controller Z6F1C25ED15235062F1BBF9DEE 完成后才应用修复。

override func viewDidLoad(_ animated: Bool) {  
     // ... 
     if #available(iOS 13.0, *) {  
          navigationController?.navigationBar.setNeedsLayout()  
     }  
}  

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM