快速-如何隐藏回到导航项按钮?

现在我有两个视图控制器。我的问题是,在切换到第二个视图控制器之后,我不知道如何隐藏后退按钮。我找到的大多数引用都在 Objective-C 中。用 Swift 怎么编码?

在 Objective-C 中隐藏后退按钮代码

[self.navigationItem setHidesBackButton:YES animated:YES];
132689 次浏览

根据 UINavigationItem文件:

self.navigationItem.setHidesBackButton(true, animated: true)

如果你使用的是 UITabBarController:

override func viewWillAppear(animated: Bool) {
super.viewWillAppear(animated)
self.tabBarController?.navigationItem.hidesBackButton = true
}

您可以尝试使用下面的代码

override func viewDidAppear(_ animated: Bool) {
self.navigationController?.isNavigationBarHidden = true
}

这也可以在 UINavigationController 类文档中找到:

navigationItem.hidesBackButton = true

斯威夫特

// remove left buttons (in case you added some)
self.navigationItem.leftBarButtonItems = []
// hide the default back buttons
self.navigationItem.hidesBackButton = true

enter image description here

转到属性检查器,取消显示导航栏以隐藏后退按钮。

将其放入 viewDidLoad方法中

navigationItem.hidesBackButton = true

下面是

Swift 5

中答案的一个版本,你可以在故事板中使用它:

// MARK: - Hiding Back Button


extension UINavigationItem {


/// A Boolean value that determines whether the back button is hidden.
///
/// When set to `true`, the back button is hidden when this navigation item
/// is the top item. This is true regardless of the value in the
/// `leftItemsSupplementBackButton` property. When set to `false`, the back button
/// is shown if it is still present. (It can be replaced by values in either
/// the `leftBarButtonItem` or `leftBarButtonItems` properties.) The default value is `false`.
@IBInspectable var hideBackButton: Bool {
get { hidesBackButton }
set { hidesBackButton = newValue }
}
}

视图控制器的每个导航项在属性检查器的顶部都有这个新属性

这招在 Swift 5里非常管用, 只需将其添加到 viewDidLoad ()

self.navigationItem.setHidesBackButton(true, animated: true)
self.navigationItem.setHidesBackButton(true, animated: false)

用 SwiftUI

.navigationBarBackButtonHidden(true)

将下面的代码放入 viewWillAppear方法中。

navigationItem.hidesBackButton = true

视频方法中尝试使用以下代码。

SetHidesBackButton (true,动画: true)

阅读下面的链接获得更多支持。 Https://developer.apple.com/documentation/uikit/uinavigationcontroller/customizing_your_app_s_navigation_bar