iOS
UIBarButtonItem
Ricerca…
Parametri
Parametro | Descrizione |
---|---|
titolo | Il titolo UIBarButtonItem |
stile | Lo stile di UIBarButtonItem |
bersaglio | L'oggetto per ricevere l'azione UIBarButtonItem |
azione | Il selettore (metodo) da eseguire quando viene premuto UIBarButtonItem |
Osservazioni
Il riferimento a self.navigationItem
presuppone che UIViewController sia incorporato in un UINavigationController.
Creazione di un 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;
Creazione di un UIBarButtonItem in Interface Builder
L'esempio seguente mostra come aggiungere un pulsante della barra di navigazione (chiamato UIBarButtonItem
) in Interface Builder.
Aggiungi un controller di navigazione allo storyboard
Seleziona il controller di visualizzazione e quindi nel menu Xcode scegli Editor> Incorpora in> Controller di navigazione .
In alternativa, è possibile aggiungere una UINavigationBar
dalla libreria degli oggetti.
Aggiungi un elemento del pulsante Bar
Trascina un UIBarButtonItem
dalla libreria degli oggetti nella barra di navigazione in alto.
Dovrebbe sembrare come questo:
Imposta gli attributi
È possibile fare doppio clic su "Elemento" per cambiare il testo in qualcosa come "Aggiorna", ma c'è un'icona reale per l' aggiornamento che è possibile utilizzare. Basta selezionare l'ispettore degli attributi per UIBarButtonItem
e per l' elemento di sistema scegliere Aggiorna .
Questo ti darà l'icona di aggiornamento predefinita.
Aggiungi un'azione IB
Controlla il trascinamento da UIBarButtonItem
al View Controller per aggiungere un @IBAction
.
class ViewController: UIViewController {
@IBAction func refreshBarButtonItemTap(sender: UIBarButtonItem) {
print("How refreshing!")
}
}
Questo è tutto.
Gli appunti
- Questo esempio deriva originariamente da questa risposta di Overflow dello stack .
Bar Button Item Immagine originale senza colore Tint
A condizione che barButtonItem
abbia una proprietà immagine non nullo (ad es. Impostata in Interface Builder).
Objective-C
barButtonItem.image = [barButtonItem.image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];