2015-11-17 12 views
7

Ich ändere eine App und diese App hat einige Schaltflächen in der Navigationsleiste. Ich wollte eine weitere Schaltfläche hinzufügen, indem ich sie in die Hierarchie ziehe, aber es scheint, dass ich sie nicht hinzufügen kann Als Kind für die Navigationsleiste wollte ich fragen, ob Sie irgendwelche Lösungen dafür haben. Hier ist ein Schnappschuss der Hierarchie des Storyboards. Ich möchte ein weiteres Element für die Schaltflächenschaltfläche oder einen anderen Button zum Navigationselement hinzufügen.
Dank
enter image description hereFügen Sie der Navigationsleiste eine weitere Schaltfläche hinzu

+1

es kein Bild gibt, laden Sie bitte ein Bild. –

+0

Vielen Dank Ich habe es beigefügt – m0j1

Antwort

15

Also habe ich gerade ein leeres Projekt und ich kann dies tun:

enter image description here

Ich habe auch Sachen wie diese vor, wo ich tatsächlich eine UIButton verwenden getan eher als ein Bar-Button-Element, das zusätzliche Anpassungsmöglichkeiten bietet. So stellen Sie sicher, dass Sie einen Zugang zum Knopf und im View-Controller Rufaufbau self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc] initWithCustomView:self.customButton];:

enter image description here

Sie können mehrere rechte Balken Taste, um Elemente haben, und wenn sie den Titel überlappen (falls Sie eine haben), dann sie sind im Wesentlichen abgeschnitten. Aus meiner Sicht können Sie so viele Tasten haben, wie Sie möchten, bis der Platz weg ist (was natürlich je nach Gerät variieren kann). Relevante Dokumente:

Dieses Array kann 0 oder mehr Balkenschaltflächen enthalten, die auf der rechten Seite der Navigationsleiste angezeigt werden. Elemente werden von rechts nach links in derselben Reihenfolge angezeigt, in der sie im Array angezeigt werden. Somit ist das erste Element in dem Array das am weitesten rechts liegende Element und andere Elemente werden links vom vorherigen Element hinzugefügt.

Wenn nicht genügend Platz vorhanden ist, um alle Elemente im Array anzuzeigen, werden diejenigen, die die Titelansicht überlappen würden (falls vorhanden) oder die Schaltflächen auf der linken Seite der Leiste nicht angezeigt.

Ein Beispiel mit vielen Knöpfen:

enter image description here

Programatically können Sie hinzufügen Schaltflächen:

navigationItem.rightBarButtonItems = [aButton, anotherButton, awesomeButton]

So stellen Sie sicher, dass Sie testen, ob das kleinste Gerät, das Sie zielen auf stellen Sie immer noch eine gute UX für den Benutzer bereit, wenn Sie viele Schaltflächen hinzufügen.

+0

Wow, danke Mann die Gifs waren erstaunlich. Kann es mehr als 3 Artikel geben? weil das Projekt, an dem ich gerade arbeite, bereits zwei Schaltflächen und ein Bild hat und ich versuche, eine dritte Schaltfläche hinzuzufügen. Danke agin – m0j1

+0

@ m0j1 Sie können sicher einen dritten rechten Knopf Artikel haben. Ich habe meine Antwort mit weiteren Details aktualisiert. – Gordonium

5

hier ist die richtige Antwort für eine rasche:

let barButton_array: [UIBarButtonItem] = [Button1, Button2] 
navigationItem.setRightBarButtonItems(barButton_array, animated: false) 
Verwandte Themen