Konfigurieren der backBarButtonItem eines View-Controller ' s Navigation-Element in einem Storyboard
Es ist leicht genug, um drag-and-drop-bar-button-items auf einen view-controller ' s navigation bar in einem storyboard im Interface Builder. Auf diese Weise können Sie die leftBarButtonItem
und rightBarButtonItem
outlets des view-Controllers in der navigation den Punkt. Aber es gibt auch eine backBarButtonItem
Steckdose, und es ist nicht unbedingt offensichtlich, wie Sie. Wie kann ich einen benutzerdefinierten zurück-bar-button-item über den Interface Builder?
InformationsquelleAutor warrenm | 2012-03-22
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Wählen Sie die Ansicht-controller, dessen Navigations-Elemente, die Sie ändern möchten. Der schwarze Balken Anzeige der Identität des view-controller-änderungen ein iconified Fach seiner referenzierten Objekte.
Drag-and-drop ein bar button item aus der object library auf dem Tablett.
backBarButtonItem
outlet.backBarButtonItem
Kabel (da ist es das Ziel, ein push-segue) und es ist unveränderlich. Es scheint keinen Weg, um wirklich ändern Sie den Titel der Schaltfläche zurück -- Einstellung der "Zurück-Taste" - Feld in der Attribut-Inspektor hat keine Wirkung.Als @wcochran oben erwähnt, beim arbeiten mit viewControllers drückte auf einen navigationController-stack, der backBarButtonItem outlet ist bereits verdrahtet und können nicht geändert werden. Außerdem, die Auswahl des Kindes VC navigationItem und ändern Sie die Zurück-Taste text im IB nicht tut, was Sie erwarten würde.
Könnte man nun denken, dass das ersetzen des Kindes VC backBarButtonItem würde das problem lösen, aber es funktioniert nicht. Verwirrend, wenn Sie wollen, um Titel der zurück-Taste des Kindes VC, müssen Sie die zurück-Taste Titel seines Eltern (!), etwa so:
Dies nicht tun, alles auf die Eltern-VC. In der Tat, wenn der Elternteil ist der navigationController die RootViewController, es wird nicht die Schaltfläche "zurück" an alle. Aber das Kind wird Erben (oder pick up) Sie die zurück-Taste, die Sie erstellt haben.
Gilt dies nur für die unmittelbar untergeordneten VC, so dass, wenn Sie gewährleisten wollen, dass die label nach unten durch den navigationController-stack, die Sie brauchen, um es auf jedem Elternteil.
Dank @wiliz in #iphonedev für die Erklärung dieses für mich.
Als @AdamBlock oben erwähnt, haben Sie die Dinge in Ordnung in der übergeordneten VC.
Er zeigt, wie dies programmatisch tun. Es ist auch möglich, dies zu tun in den interface builder.
Im Interface Builder können Sie die in der Navigation den Punkt zurück-Taste Titel.
Programmgesteuert, können Sie eine benutzerdefinierte Schaltfläche zurück in Ihrem view-controller die viewDidLoad-Methode. In diesem Beispiel setzen wir die Schaltfläche Bild, um ein Bild mit dem Namen "customImage.png":