iOS
UIBarButtonItem
Szukaj…
Parametry
Parametr | Opis |
---|---|
tytuł | Tytuł UIBarButtonItem |
styl | Styl UIBarButtonItem |
cel | Obiekt odbierający akcję UIBarButtonItem |
akcja | Selektor (metoda), który należy wykonać po naciśnięciu UIBarButtonItem |
Uwagi
Odwoływanie się do self.navigationItem
zakłada, że UIViewController jest osadzony w UINavigationController.
Tworzenie UIBarButtonItem
//Swift
let barButtonItem = UIBarButtonItem(title: "Greetings!", style: .Plain, target: self, action: #selector(barButtonTapped))
self.navigationItem.rightBarButtonItem = barButtonItem
//Objective-C
UIBarButtonItem *barButtonItem = [[UIBarButtonItem alloc] initWithTitle:@"Greetings!" style:UIBarButtonItemStylePlain target:self action:@selector(barButtonTaped)];
self.navigationItem.rightBarButtonItem = barButtonItem;
Tworzenie UIBarButtonItem w Konstruktorze interfejsów
Poniższy przykład pokazuje, jak dodać przycisk paska nawigacji (zwany UIBarButtonItem
) w Konstruktorze interfejsów.
Dodaj kontroler nawigacji do swojej Storyboard
Wybierz widok kontrolera, a następnie w menu Xcode wybierz polecenie Edytor> Osadź w> Kontroler nawigacji .
Alternatywnie możesz dodać UINavigationBar
z biblioteki obiektów.
Dodaj element przycisku paska
Przeciągnij UIBarButtonItem
z biblioteki obiektów na górny pasek nawigacyjny.
To powinno wyglądać tak:
Ustaw atrybuty
Możesz dwukrotnie kliknąć „Element”, aby zmienić tekst na coś w rodzaju „Odśwież”, ale istnieje odpowiednia ikona Odśwież , której możesz użyć. Wystarczy wybrać Inspektora atrybutów dla UIBarButtonItem
a dla pozycji systemowej wybierz Odśwież .
To da domyślną ikonę Odśwież.
Dodaj akcję IB
Przeciągnij kontrolę z UIBarButtonItem
do kontrolera widoku, aby dodać @IBAction
.
class ViewController: UIViewController {
@IBAction func refreshBarButtonItemTap(sender: UIBarButtonItem) {
print("How refreshing!")
}
}
Otóż to.
Notatki
- Ten przykład pochodzi pierwotnie z tej odpowiedzi Przepełnienie stosu .
Przycisk paska Element Oryginalny obraz bez koloru odcienia
Pod warunkiem, że barButtonItem
ma barButtonItem
właściwość obrazu (np. Ustawioną w Konstruktorze interfejsów).
Cel C
barButtonItem.image = [barButtonItem.image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];