Wenn Sie self.navigationItem.backBarButtonItem
Referenz sollten Sie sich bewusst sein, dass dies das Bar-Taste Element, das in der Navigationsleiste verwendet wird, wenn self
nicht die topViewController
sind, sondern unmittelbar unter den topViewController
. Das ist self.navigationItem.backBarButtonItem
ist nicht die Schaltfläche derzeit sichtbar, wenn self
die topViewController
ist, aber wenn eine andere Ansicht Controller darüber geschoben wird.
Sie sollten sich auch bewusst sein:
When this property is nil, the navigation item uses the value in its title property to create an appropriate back button.
Was bedeutet, dass self.navigationItem.backBarButtonItem
nil
sein können und haben noch einen Titel. Siehe here
Wenn Sie wissen möchten, welcher Text mit der Zurück-Taste verwendet wird, könnte Sie etwas sagen konnte, wie:
extension UINavigationController {
var backButtonText: String? {
guard let self.viewControllers.count > 1 else { return nil }
let viewController = self.viewControllers[self.viewControllers.count - 2]
return viewController.navigationItem.backBarButtonItem?.title ?? viewController.title
}
}
, die wie genannt werden könnte:
print(self.navigationController?.backButtonText ?? "No back button title")
ist es auch möglich, Jetzt zugreifen, um auf die Schaltfläche für die benutzerdefinierte Schaltfläche für den oberen Controller zuzugreifen? –