SwiftUI - 如何仅在一个屏幕上自定义导航栏?

标签 swift xcode navigationbar swiftui

在 WWDC 上,一个演讲举例说明了“提醒”应用程序如何在不同屏幕上自定义导航栏。他们分享了他们是如何做到的:

let appearance = navigationBar.standardAppearance.copy()
navigationItem.standardAppearance = appearance

实际实现如何进行?为了自定义一个导航栏,我不太确定该代码槽的位置。

如有任何帮助,我们将不胜感激!

最佳答案

在 viewWillAppear 中设置这个值

UINavigationBar.appearance().titleTextAttributes = [ NSFontAttributeName:UIFont(名称:“MuseoSans-500”,大小:19)!, NSForegroundColorAttributeName: UIColor.black ]

并在 viewWillDisappear 上重置所有值。

关于SwiftUI - 如何仅在一个屏幕上自定义导航栏?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56608802/

相关文章:

ios - 如何在 Collection View 中查找项目的索引路径

ios - Xcode 7 - 在 Swift 中初始化 UIView/UILabel/UIButton 时,代码完成无法与 CGRectMake 一起使用

html - 如何设置导航菜单项之间的不同间距?

ios - 更新 View Controller 之间的状态栏样式

ios - PromiseKit ios Swift 闭包返回类型问题

ios - 无法将项目从 Storyboard拖放到 xcode 中的 View Controller

flutter - 如何在移动到另一个页面后隐藏导航栏( flutter )?

html - 导航栏在一个页面上有效,但在另一个页面上无效

ios - UNIX时间转换swift iOS

xcode - Storyboard与 XIB