Ich habe also einen Basis-View-Controller mit einer Navigationsleiste. Dies ist View-Controller B, also führe ich hier eine Auswahl aus und versuche, den Titel so zu ändern:
override func viewDidLoad() {
debugPrint(self.selectedName)
super.viewDidLoad();
self.navigationItem.title = "A NEW TITLE"
}
Aber es tut nichts
Für Swift 3:
Wenn Sie nur den Navigationstitel festlegen möchten, ohne eine UINavigationController
zu verwenden, machen Sie einen Ausgang des Navigationselements als
@IBOutlet weak var navItem: UINavigationItem!
und dann in viewDidLoad()
schreiben
navItem.title = "ANY TITLE"
Um Titel auf der Navigationsleiste zu setzen, können Sie einfach den folgenden Code verwenden
self.title = "Your Title"
Es gibt viele Methoden, denen Sie folgen können, um dies zu erreichen. Hier sind einige davon.
Das wichtigste zuerst.
Wenn Sie bereit sind, einen Navigationscontroller "einzubetten", oder wenn Sie bereits einen haben, können Sie mit folgendem Code darauf zugreifen.
self.navigationController?.navigationBar.topItem?.title = "Your Title"
Jetzt für mehr Anpassung:
UINavigationBar
-Objekt in der ViewController-Szene, und fügen Sie Einschränkungen hinzu.Stellen Sie einen Auslass für neu platzierte UINavigationBar
wie folgt her:
@IBOutlet weak var orderStatusNavigationbar: UINavigationBar!
Stellen Sie nun den Titel über die Steckdose ein.
orderStatusNavigationbar.topItem?.title = "Your Title"
Alle oben genannten Codes sind in Swift 3 enthalten, funktionieren aber auch mit niedrigeren Versionen von Swift (zumindest in Swift 2.0).
Hoffe das hat geholfen.
Swift 4/XCode 10
Neue Navigationsleiste hinzufügen ->
Drapiere und lass es auf deine Ansicht fallen
Drücken Sie CTRL um eine neue Outlet-Aktion hinzuzufügen
Beispiel: @IBOutlet weak var main_navbar: UINavigationBar
in ViewController
Klasse.
Dann setzen Sie den Titel: main_navbar.topItem?.title = "YOUR TITLE"
Diese Lösung hat bei mir funktioniert, ich hoffe, sie funktioniert auch bei Ihnen. - Rust
Ok, Sie müssen also zunächst das Ganze in einen Navigationscontroller einbetten und diesen Navigationscontroller dann als anfänglichen Controller festlegen.
Wähle dein Storyboard aus, klicke auf den ersten Controller und dann auf diesen -
Dann entfernen Sie die Navigationsleiste, die Sie über dem letzten Controller namens "title" gesetzt haben.
Der Grund, warum dies nicht funktioniert hat, da Sie versuchen, den Titel der Navigationsleiste des Navigationscontrollers zu ändern, aber er hat ihn nicht, daher kann er ihn nicht ändern.