Estoy tratando de cambiar el color del botón Configuración a blanco, pero no puedo cambiarlo.
He intentado ambos:
navigationItem.leftBarButtonItem?.tintColor = UIColor.whiteColor()
navigationItem.backBarButtonItem?.tintColor = UIColor.whiteColor()
pero sin cambios, todavía se ve así:
¿Cómo hago que ese botón sea blanco?
ios
swift
uinavigationbar
uibarbuttonitem
backbarbuttonitem
Brandon Evans
fuente
fuente
AppDelegate.swift > application(application:didFinishLaunchingWithOptions:)
puede escribir:self.window!.tintColor = .yourColor
Este código cambia el color de la flecha.
Si esto no funciona, use el siguiente código:
Swift 3 Notas
UIColor.whiteColor()
y similares se han simplificado aUIColor.white
Además, muchas opciones opcionales previamente implícitas se han cambiado a explícitas, por lo que es posible que necesite:
fuente
self.navigationController?.navigationBar.tintColor = UIColor.whiteColor()
funcionó para mí (Swift 2.2)Muy fácil de configurar en el guión gráfico:
fuente
Deberías usar esto:
fuente
Rápido
fuente
Puedes usar como este. Colóquelo adentro
AppDelegate.swift
.fuente
Swift 4.2
Cambiar el tema completo de la aplicación
Cambiar controlador específico
fuente
UINavigationController
?En Swift3 , para configurar el botón Atrás en
red
.fuente
En Swift 4, puede solucionar este problema utilizando:
fuente
Swift 3
La respuesta más votada no es correcta para Swift 3.
El código correcto para cambiar de color es:
Si desea cambiar el color, cambie UIColor.white arriba al color deseado
fuente
Todas las respuestas están en
UINavigationBar.appearance().tintColor
conflicto con la documentación de Apple enUIAppearance.h
.En Xcode, debe hacer clic en cada propiedad que desea usar con el proxy de apariencia para inspeccionar el archivo de encabezado y asegurarse de que la propiedad esté anotada
UI_APPEARANCE_SELECTOR
.Entonces, la forma correcta de colorear la barra de navegación de color púrpura y el título y los botones de color blanco en toda la aplicación a través del proxy de apariencia es:
Tenga en cuenta que
UIBarButtonItem
no es una subclase de,UIView
sino más bienNSObject
. Entonces sutintColor
propiedad no es la heredadatintColor
deUIView
.Desafortunadamente,
UIBarButtonItem.tintColor
no está anotado conUI_APPEARANCE_SELECTOR
, pero eso me parece un error de documentación. La respuesta de Apple Engineering en este radar indica que es compatible.fuente
Este fragmento hace la magia. En lugar del redColor, cámbielo como desee.
fuente
Use este código en
AppDelegate
clase, dentro dedidFinishLaunchingWithOptions
.fuente
Probemos este código:
fuente
en uso rápido 2.0
fuente
Si ya tiene el botón de retroceso en su controlador de vista "Configuración" y desea cambiar el color del botón de retroceso en el controlador de vista "Información de pago" a otra cosa, puede hacerlo dentro del controlador de vista "Configuración" para prepararse de esta manera. :
fuente
Esto funciona para mí, iOS 9.0+
fuente
Agregue el siguiente código a la función didFinishLaunchingWithOptions en AppDelegate.swift
fuente
Para Swift 2.0, para cambiar el color de tinte de la barra de navegación , el texto del título y el color de tinte del botón Atrás cambiaron utilizando lo siguiente en AppDelegate.swift
fuente
No estoy seguro de por qué nadie ha mencionado esto ... pero estaba haciendo exactamente lo que estabas haciendo en mi
viewDidLoad
... y no estaba funcionando. Luego puse mi códigoviewWillAppear
y todo funcionó.La solución anterior es cambiar un solo elemento barbuttonItem. Si desea cambiar el color de cada barra de navegación en su código, siga esta respuesta .
Básicamente, cambiar a la clase en sí usando
appearance()
es como hacer un cambio global en todas las instancias de esa vista en su aplicación. Para más información ver aquífuente
Tiene una opción: ocultar su botón de retroceso y hacerlo con usted mismo. Luego establece su color.
Yo lo hice:
fuente
Se resolverá con esta línea en - (vacío) viewDidLoad:
fuente
(lldb) p self.navigationItem.backBarButtonItem (UIBarButtonItem *) $9 = nil (lldb)
Deberías agregar esta línea
fuente
Prefiero el NavigationController personalizado en lugar de configurar la interfaz de usuario global, o ponerlo en ViewController.
Aqui esta mi solucion
Además, no necesita meterse con Apple Api como EKEventEditViewController , PickerViewController , etc. , si usa la configuración global ui como
UIBarButtonItem.appearance().tintColor = .white
fuente
fuente