iOS
UIBarButtonItem
Zoeken…
parameters
Parameter | Beschrijving |
---|---|
titel | De titel UIBarButtonItem |
stijl | De stijl van het UIBarButtonItem |
doelwit | Het object om de actie UIBarButtonItem te ontvangen |
actie | De selector (methode) die moet worden uitgevoerd wanneer de UIBarButtonItem wordt ingedrukt |
Opmerkingen
Verwijzen naar self.navigationItem
gaat ervan uit dat de UIViewController is ingebed in een UINavigationController.
Een UIBarButtonItem maken
//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;
Een UIBarButtonItem maken in de Interface Builder
Het onderstaande voorbeeld laat zien hoe u een navigatiebalkknop (een UIBarButtonItem
) in de Interface Builder kunt toevoegen.
Voeg een navigatiecontroller toe aan uw Storyboard
Selecteer uw View Controller en kies vervolgens in het Xcode-menu Editor> Embed In> Navigation Controller .
U kunt ook een UINavigationBar
vanuit de UINavigationBar
.
Voeg een balkknopitem toe
Sleep een UIBarButtonItem
van de UIBarButtonItem
naar de bovenste navigatiebalk.
Het zou er zo uit moeten zien:
Stel de attributen in
U kunt dubbelklikken op "Item" om de tekst te wijzigen in iets als "Vernieuwen", maar er is een echt pictogram voor Vernieuwen dat u kunt gebruiken. Selecteer gewoon de Attributes Inspector voor de UIBarButtonItem
en kies voor Systeemitem Vernieuwen .
Dat geeft je het standaard pictogram Vernieuwen.
Voeg een IB-actie toe
Control slepen van UIBarButtonItem
naar de View Controller om een @IBAction
toe te voegen.
class ViewController: UIViewController {
@IBAction func refreshBarButtonItemTap(sender: UIBarButtonItem) {
print("How refreshing!")
}
}
Dat is het.
Notes
- Dit voorbeeld komt oorspronkelijk uit dit Stack Overflow-antwoord .
Balkknop Item Oorspronkelijke afbeelding zonder tintkleur
Op voorwaarde dat barButtonItem
een niet- barButtonItem
afbeeldingseigenschap heeft (bijvoorbeeld ingesteld in de Interface Builder).
Doelstelling C
barButtonItem.image = [barButtonItem.image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];