¿Cómo cambio el color de la barra de navegación en iOS 7?
Básicamente quiero lograr algo como la barra de navegación de Twitter (Twitter actualizado para iOS7
eso es). Incruste en una barra de navegación encima de a view controller
. Todo lo que quiero es cambiar el color de la barra de navegación a azul claro junto con la barra de utilidades en la parte superior. Parece que no puedo encontrar una opción en mi storyboard
.
ios
ios7
storyboard
uikit
uinavigationbar
Patricio Guerra
fuente
fuente
Respuestas:
El comportamiento de
tintColor
for bars ha cambiado en iOS 7.0. Ya no afecta el fondo de la barra.De la documentación:
Referencia de clase barTintColor
El color de tinte para aplicar al fondo de la barra de navegación.
Discusión
Este color se hace translúcido por defecto a menos que establezca la propiedad translúcida en
NO
.Disponibilidad
Disponible en iOS 7.0 y posterior.
Declarado en
UINavigationBar.h
Código
También podemos usar esto para verificar la versión de iOS como se menciona en la Guía de transición de la interfaz de usuario de iOS 7
EDITAR usando xib
fuente
Hacer lo que pedía la pregunta original —para obtener el aspecto antiguo de la barra de navegación de Twitter, fondo azul con texto blanco— es muy fácil de hacer simplemente usando Interface Builder en Xcode.
Eso debería darte lo que quieres. Aquí hay una captura de pantalla que facilitaría ver dónde realizar los cambios.
Tenga en cuenta que cambiar solo el Tinte de barra no cambia el color del texto en la Barra de navegación o la Barra de estado. El estilo también necesita ser cambiado.
fuente
Default
yBlack
todavía están disponibles en iOS 9. Los obsoletos sonBlackOpaque
yBlackTranslucent
, que fueron reemplazados por una combinación deBlack
estilo y la casilla Translúcido. UIBarStyle en el sitio web para desarrolladores de Applefuente
En una aplicación basada en navegación, puede poner el código en AppDelegate. Un código más detallado podría ser:
fuente
[[UINavigationBar appearance] setBarTintColor:[UIColor barColor]];
para iOS 7En
viewDidLoad
, establecer:Cambie (
blueColor
) al color que desee.fuente
Para cambiar rápidamente el color de la barra de navegación:
cambiar la fuente del título, tamaño, color:
fuente
En iOS 7 debe usar la propiedad -barTintColor:
fuente
Si desea utilizar un código hexadecimal, esta es la mejor manera de hacerlo.
Primero, defina esto en la parte superior de su clase:
Luego, dentro de la "aplicación didFinishLaunchingWithOptions", pon esto:
Ponga su código hexadecimal en lugar de 00b0f0.
fuente
Si necesita admitir ios6 y ios7, entonces obtiene ese azul claro particular usando esto en su UIViewController :
fuente
En realidad es más fácil que las respuestas que he visto aquí:
Espero que esto ayude a alguien. No me gustaron las respuestas que vi. Me gusta mantener mi código lo más limpio posible. No digo que esté mal hacerlo programáticamente, pero hay personas como yo ... esto es para ustedes.
fuente
Para completar el código de Rajneesh071, también puede configurar el color del título de la barra de navegación (y la fuente, si lo desea) ya que el comportamiento predeterminado cambió de iOS 6 a 7:
fuente
Agregue solo este código en su
ViewContorller
o en suAppDelegate
fuente
fuente
En una aplicación basada en navegación puedes cambiar de color
fuente
fuente
Esta pregunta y estas respuestas son útiles. Con ellos pude establecer el color azul oscuro deseado
navigationBar
con el título blanco y el texto del botón.Pero también necesitaba cambiar el reloj, la portadora, la intensidad de la señal, etc. a blanco. El negro simplemente no contrastaba lo suficiente con el azul oscuro.
Puede que haya pasado por alto que la solución en una de las respuestas anteriores, pero yo era capaz de hacer que el cambio mediante la adición de esta línea a nivel superior
viewController
'sviewDidLoad
:fuente
UIStatusBarStyleLightContent
funciona, pero parece que la enumeración correctasetBarStyle:
esUIBarStyleBlack
fuente
Para el color:
Para la imagen
fuente