iOS
UIBarButtonItem
Buscar..
Parámetros
Parámetro | Descripción |
---|---|
título | El título de UIBarButtonItem |
estilo | El estilo del UIBarButtonItem. |
objetivo | El objeto para recibir la acción UIBarButtonItem. |
acción | El selector (método) que se realizará cuando se presione UIBarButtonItem |
Observaciones
La referencia a self.navigationItem
asume que UIViewController está incrustado dentro de un UINavigationController.
Creando 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;
Creando un UIBarButtonItem en el Interface Builder
El siguiente ejemplo muestra cómo agregar un botón de la barra de navegación (denominado UIBarButtonItem
) en el Creador de interfaces.
Agrega un controlador de navegación a tu guión gráfico
Seleccione su View Controller y luego en el menú Xcode elija Editor> Incrustar en> Navigation Controller .
Alternativamente, puede agregar una UINavigationBar
de UINavigationBar
desde la biblioteca de objetos.
Añadir un elemento de botón de barra
Arrastre un UIBarButtonItem
desde la biblioteca de objetos a la barra de navegación superior.
Debe tener un aspecto como este:
Establecer los atributos
Puede hacer doble clic en "Elemento" para cambiar el texto a algo como "Actualizar", pero hay un icono real para Actualizar que puede usar. Simplemente seleccione el inspector de atributos para el UIBarButtonItem
y para el elemento del sistema elija Actualizar .
Eso te dará el icono de actualización predeterminado.
Añadir una acción IB
Controle el arrastre desde UIBarButtonItem
al controlador de vista para agregar una @IBAction
.
class ViewController: UIViewController {
@IBAction func refreshBarButtonItemTap(sender: UIBarButtonItem) {
print("How refreshing!")
}
}
Eso es.
Notas
- Este ejemplo proviene originalmente de esta respuesta de desbordamiento de pila .
Elemento de botón de barra Imagen original sin color de tinte
Siempre que barButtonItem
tenga una propiedad de imagen no nula (por ejemplo, establecida en el Creador de Interfaz).
C objetivo
barButtonItem.image = [barButtonItem.image imageWithRenderingMode:UIImageRenderingModeAlwaysOriginal];