web-dev-qa-db-de.com

Titel der Navigationsleiste einstellen

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

 enter image description here

5
Uffo

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"
10
Mamta

Um Titel auf der Navigationsleiste zu setzen, können Sie einfach den folgenden Code verwenden

self.title = "Your Title"
9
Ganesh Manickam

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:

  1. Platzieren Sie ein UINavigationBar-Objekt in der ViewController-Szene, und fügen Sie Einschränkungen hinzu.
  2. Stellen Sie einen Auslass für neu platzierte UINavigationBar wie folgt her:

    @IBOutlet weak var orderStatusNavigationbar: UINavigationBar!
    
  3. 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.

5
onCompletion

Swift 4/XCode 10

  1. Neue Navigationsleiste hinzufügen -> Drapiere und lass es auf deine Ansicht fallen

  2. Drücken Sie CTRL um eine neue Outlet-Aktion hinzuzufügen

  3. Beispiel: @IBOutlet weak var main_navbar: UINavigationBar in ViewController Klasse.

  4. 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 enter image description here

1
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 - 

 img

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.

1
Saheb Roy