Quiero cambiar mis elementos de la barra de pestañas para que sean rosas cuando se seleccionen en lugar del azul predeterminado.
¿Cómo puedo lograr esto usando el editor de guiones gráficos en Xcode 6?
Aquí está mi configuración actual que no funciona, el fondo azul funciona pero el rosa no funciona:
Respuestas:
Agregue el atributo Color de tiempo de ejecución denominado "tintColor" de StoryBoard. Esto está funcionando ( para Xcode 8 y superior ).
si desea un color no seleccionado ... también puede agregarlo
unselectedItemTintColor
.fuente
UITabBarItem
, en elUINavigationController
conectado a mi tabBar y funciona sin problemas. Todo sin escribir ningún código también, lo cual es genial, ya que estoy reutilizando una clase de VC tres veces. ¡Gracias!Esta elegante solución funciona muy bien en SWIFT 3.0 , SWIFT 4.2 y SWIFT 5.1 :
En el guión gráfico:
Editar: Trabajar con Xcode 8/10, para iOS 10/12 y superior .
fuente
En Swift, usando xcode 7 (y posterior), puede agregar lo siguiente a su archivo AppDelegate.swift:
Así es como se ve el método completo:
En el ejemplo anterior, mi artículo será blanco. Se necesita "/255.0" porque espera un valor de 0 a 1. Para el blanco, podría haber usado 1. Pero para otro color probablemente usará valores RGB.
fuente
En
Xcode8
He cambiado elImageTint
del guión gráfico y funciona bien.El resultado:
fuente
Swift 3 | Xcode 10
Si desea que todos los elementos de la barra de pestañas tengan el mismo color (seleccionados y no seleccionados) ...
Paso 1
Asegúrese de que los recursos de su imagen estén configurados para Renderizar como = Imagen de plantilla . Esto les permite heredar el color.
Paso 2
Use el editor de guiones gráficos para cambiar la configuración de la barra de pestañas de la siguiente manera:
Paso 3
Los pasos 1 y 2 cambiarán el color del icono seleccionado. Si aún desea cambiar el color de los elementos no seleccionados, debe hacerlo en código. No he encontrado una manera de hacerlo a través del editor del guión gráfico.
Crear una clase de controlador de barra de pestañas personalizada ...
... y asigne la clase personalizada al controlador de escena de la barra de pestañas.
Si descubre cómo cambiar el color del icono no seleccionado a través del editor del guión gráfico, avíseme. ¡Gracias!
fuente
self.tabBar.unselectedItemTintColor = UIColor.white
self.tabBar.tintColor = #colorLiteral(red: 0.2, green: 0.7333333333, blue: 0.3450980392, alpha: 1)
Trabaja para míponga este código en viewDidLoad del controlador de vista del que desea cambiar el color
fuente
También puede establecer el color de tinte de la barra de imagen seleccionado por la ruta de la tecla:
¡¡Espero que esto te ayudará!! Gracias
fuente
XCode 8.2, iOS 10, Swift 3: ahora hay un
unselectedItemTintColor
atributo paratabBar
:fuente
Puede cambiar los colores UITabBarItem por storyboard, pero si desea cambiar los colores por código, es muy fácil:
// Use esto para cambiar el color de la barra seleccionada
// Esto para cambiar la barra no seleccionada (iOS 10)
// Y esta línea para cambiar el color de todas las pestañas
fuente
De alguna manera, no podemos cambiar el color de tinte del elemento seleccionado de la barra de pestañas usando el guión gráfico solo, por lo tanto, agregué el siguiente código en mi ViewDidLoad, espero que esto ayude.
fuente
Agregue este código en la función delegado de su aplicación -did_finish_launching_with_options
pon el RGB del color requerido
fuente
Esta es la solución en Swift 3 que funciona en iOS 10:
En primer lugar, crea su propia subclase de controlador de barra de pestañas y la agrega a su controlador de pestañas en su guión gráfico. En el
viewDidLoad()
método, puede personalizar la barra de pestañas. ¡Debe señalarse aquí que eltintColor
atributo detabBar
representa el color del elemento seleccionado, no el color de los elementos no seleccionados! Para cambiar el color de los elementos no seleccionados, recomiendo recorrer cada elemento y usar los colores originales de sus imágenes, para que no se muestren en gris automáticamente.El único inconveniente de este enfoque es que las imágenes de sus elementos ya deben tener el color deseado al que apunta.
fuente
Esta mejor manera es cambiar
Image Tint
en el guión gráficofuente
Puede subclasificar el
UITabBarController
y reemplazar el que está en el guión gráfico. En suviewDidLoad
implementación de la subclase, llame a esto:fuente
'UITabBar' does not have a member named 'setSelectedImageTintColor'
self.tabBar.setSelectedImageTintColor = UIColor.greenColor
no estoy seguro de si eso es correcto o notintColor
noselectedImageTintColor
, por ciertoselectedImageTintColor
está en desuso en iOS 8.