• Empleos
  • Sobre nosotros
  • profesionales
    • Inicio
    • Empleos
    • Cursos y retos
  • empresas
    • Inicio
    • Publicar vacante
    • Nuestro proceso
    • Precios
    • Evaluaciones
    • Nómina
    • Blog
    • Comercial
    • Calculadora de salario

0

390
Vistas
Conversión de CGColor a UIColor

Cuando inicializo un CGColor y lo convierto a UIColor, no se procesa de la misma manera que un UIColor que se inicializa con los mismos valores. ¿Cómo puedo convertir entre CGColor y UIColor y mantener la misma apariencia?

Este código produce dos colores ligeramente diferentes (ver captura de pantalla), aunque esperaría que los colores fueran los mismos:

 self.view.backgroundColor = UIColor(red: 19/255.0, green: 25/255.0, blue: 28/255.0, alpha: 1.0) let myCGColor = CGColor(red: 19/255.0, green: 25/255.0, blue: 28/255.0, alpha: 1.0) self.secondView.backgroundColor = UIColor(cgColor: myCGColor)

Arriba: UIColor / Abajo: CGColor->UIColor Arriba: UIColor Abajo: CGColor->UIColor

over 3 years ago · Santiago Trujillo
1 Respuestas
Responde la pregunta

0

Eso es porque ese inicializador CGColor usa un espacio de color diferente. UIColor usa SRGB extendido mientras que CGColor usa RGB genérico.

Si desea obtener el mismo color, debe especificar el mismo espacio de color al inicializar su CGColor:

 let cgColor = CGColor(colorSpace: .init(name: CGColorSpace.extendedSRGB)!, components: [19.0/255, 25.0/255, 28.0/255, 1.0])!

Para iOS13+ o macOS10.15+, puede usar el init(srgbRed:green:blue:alpha:) :

 let cgColor = CGColor(srgbRed: 19/255, green: 25/255, blue: 28/255, alpha: 1)
over 3 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Nuestro proceso Comercial
Legal
Términos y condiciones Política de privacidad
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recomiéndame algunas ofertas
Necesito ayuda