Ich kann das trotz meiner Bemühungen nicht lösen. Ich habe hier auch die Apple-Dokumentation und einige verwandte Fragen konsultiert und habe immer noch eine mentale Blockade.
Mit Xcode 6 habe ich einen Tabellensicht-Controller in einen Navigations-Controller eingebettet und konnte den Titel der Navigationsleiste im Tabellensicht-Controller festlegen, aber nicht in den beiden View-Controllern, die über Segmente mit der Tabellensicht verbunden sind.
Ich habe gedacht, es gibt eine Navigationsleiste auf diesen beiden Ansichtscontrollern, da sie, nachdem ich den Tabellenansichtscontroller in den Navigationscontroller eingebettet habe, mein oberstes Textfeld in beiden blockiert hat. Ich habe das neu positioniert, damit es kein Problem ist, aber im Storyboard kann ich immer noch nicht in die Navigationsleiste klicken, um einen Titel hinzuzufügen. Nachdem ich jetzt eine Navigationsleiste manuell hinzugefügt habe, um sie zu testen, kann ich das sehen Es gibt nur eine Navigationsleiste in der Dokumentenübersicht.
Müssen Sie also einfach den Titel der Navigationsleiste programmgesteuert oder mit einem IBOutlet oder ähnlichem festlegen? Scheint nicht so, als könntest du im Storyboard darauf klicken.
Ich bin mir ziemlich sicher, dass dies ein Fehler in xCode ist ... Ich habe das gleiche Problem erlebt und die meiste Zeit wurde es durch einen Neustart von xCode behoben.
** Außerdem können Sie es möglicherweise lösen, indem Sie Folgendes tun:
Ziehen Sie ein Navigationselement aus dem Objektfenster in den Viewcontroller oder den TableView-Controller. Das schien für mich zu funktionieren. Ich habe bemerkt, dass der Navigationsbereich im "Dokumentgliederungsfenster" fehlte.
Ich hoffe das hilft.
Ich hatte das gleiche Problem. Was für mich funktionierte, war die Auswahl des Controllers, für den ich den Titel nicht festlegen konnte. Klicken Sie auf Editor -> Einbetten in -> Navigationscontroller.
Dann sollten Sie den Titel bearbeiten können und wenn Sie fertig sind, den Navigationscontroller löschen und die beiden ursprünglichen Controller erneut verbinden.
Der zuvor eingebettete Bildschirm sollte jetzt den zuvor erstellten Titel enthalten.
Versuchen Sie, den Titel programmgesteuert festzulegen -> self.navigationItem.title = @ "REGISTER";
Ich hatte das gleiche Problem, als ich Apple's Swift Guid folgte. Das Doppelklicken auf die "Navigationsleiste" hat nichts für mich getan. Wie ich es gelöst habe:
1: Wählen Sie im Dokumentgliederungsfenster das "Navigationselement" aus.
2: Öffnen Sie den Attribute-Inspector.
3: Wählen Sie das Titelfeld aus und schreiben Sie stattdessen den Titel hier.
platzieren Sie dies für Ihre Vorbereitung: [Segue.destinationViewController setTitle: @ "New Task"];
Verwenden Sie beim Einbetten von Controllern unbedingt ein Beziehungssegment und kein manuelles Segue.
Es scheint, dass dies in der Tat ein Fehler in IB ist ????
Aktualisieren Sie dieses Problem, wenn jemand anderes es benötigt:
Sie können stattdessen auch die "title" -Eigenschaft des View-Controllers festlegen, wodurch automatisch der Titel eines Navigations- oder Registerkartenelements festgelegt wird.
Wenn Sie den Ansichts-Controller im Storyboard auswählen, können Sie den Titel unter "Ansicht-Controller" im Attribut-Inspektor (Xcode 9) festlegen:
Verbinden Sie Ihr Navigationselement mit Ihrer Klasse (d. H. UIViewController) und greifen Sie programmgesteuert auf den Titel zu, indem Sie Folgendes in Ihre viewDidLoad schreiben:
navigationItem.title = "whateverTextHere"