Swift / iOS - 推送新视图控制器时保留 UINavigationItem
Swift / iOS - Preserve UINavigationItem when pushing new view controller
swift 4 中是否有一种干净的方法来在从一个 UIViewController 推送到另一个时显示的导航栏中保留完全相同的 UINavigationItems
。
这意味着当新的视图控制器被推入堆栈时,我希望导航栏保持原样(所有相同的项目)
其实已经存在很久了。只需将 rootViewController 或 currentVC 设置为 UINavigationBar 的委托即可。
class RootVC : UIViewController, UINavigationBarDelegate{
func navigationBar(_ navigationBar: UINavigationBar, shouldPush item: UINavigationItem) -> Bool{
return false;
}
override func viewDidLoad() {
super.viewDidLoad()
navigationController?.navigationBar.delegate = self
}}
swift 4 中是否有一种干净的方法来在从一个 UIViewController 推送到另一个时显示的导航栏中保留完全相同的 UINavigationItems
。
这意味着当新的视图控制器被推入堆栈时,我希望导航栏保持原样(所有相同的项目)
其实已经存在很久了。只需将 rootViewController 或 currentVC 设置为 UINavigationBar 的委托即可。
class RootVC : UIViewController, UINavigationBarDelegate{
func navigationBar(_ navigationBar: UINavigationBar, shouldPush item: UINavigationItem) -> Bool{
return false;
}
override func viewDidLoad() {
super.viewDidLoad()
navigationController?.navigationBar.delegate = self
}}