Los Asset Catalog de colores son las paletas de colores que podemos crear, desde la publicación de iOS 11 y Xcode 9, para tener en un único punto la definición de todos los colores de nuestras aplicaciones.

Esto nos permitirá, por un lado, utilizar estos colores tanto desde el código como desde la interfaz gráfica (storyboard y xib), y, por otro, preparar nuestra aplicación para utiliar el Dark Mode (disponible en iOS 13 y Xcode 11), tal como se muestra en Cómo añadir el Modo Oscuro o Dark Mode en iOS 13.

Creación de un color

Para crear un color de nuestra paleta, podemos hacerlo directamente seleccionando la carpeta Assets.xcassets (o creando una carpeta .xcassets propia para los colores) en el navegador del proyecto (Proyect Navigator).

Después hacemos clic con el botón derecho y seleccionamos New Color Set. De esta forma hemos creado un nuevo color y, si accedemos a la ventana de atributos, podremos cambiar su nombre y sus propiedades. En este caso, a este nuevo color lo llamaremos greenBackgroundColor.

Uso de los nuevos colores en ficheros storyboard y xib

Para utilizar el nuevo color que hemos creado desde la interfaz gráfica, simplemente hemos de seleccionar las propiedades del elemento al cual queremos aplicar el color y seleccionarlo desde la vista del inspector de atributos (Atributtes inspector). Por ejemplo, si creamos una etiqueta (UILabel), podemos ir a la propiedad Color, y allí seleccionar el color que hemos creado.

Uso de los nuevos colores en el código

Para usar directmamente en el código el nuevo color creado, la mejor forma es crear una extension para la clase UIColor y ahí crear una variable con el nombre del color.

Por ejemplo:

extension UIColor {
  static let greenBackgroundColor: UIColor = UIColor(named: "GreenBackgroundColor")!
}

Lo que nos permite usar este nuevo color de la siguiente forma:

let labelColor = UIColor.greenBackgroundColor
Categorías: SwiftUIColor

0 commentarios

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Sígueme en Feedly
shares