Estoy definir un color en código como

[UIColor colorWithHue:32.0/360.0 saturation:0.88 brightness:0.97 alpha:1]

Si intento configurar el mismo color en el guión gráfico, cuando se ejecuta la Aplicación es un color levemente diferente a la definida en el código. Si me arrastre el color para el paladar, a continuación, seleccione un color diferente y seleccione el paladar una vez más, la HSB los valores son ligeramente diferentes. Parece ser que es el ajuste a las diferentes (RGB?) el color en el interface builder.

  • El uso de colorWithHue y no RGB web valores hexadecimales: gran elección.
  • En su código de intentar el registro de la HSB el conjunto de valores de IB. Si son diferentes de presentar un error: bugreporter.apple.com. Creo que también he visto este problema.
  • mismo pasó conmigo cuando la selección de un UIView del color de fondo y ajuste del mismo color de fondo para UITableView pero de diferente color. Para lograr que tenía hacer cambios en el color de la alfa
  • Storyboard de color sesión: H:27.982594 S:0.899257 B:0.953253 voy a informar
  • rdar://19744216
InformationsquelleAutor Nick | 2015-02-06

5 Comentarios

  1. 188

    Xcode 8+, iOS 10+

    Recientemente he enfrentado a este problema y ninguna de las respuestas publicadas hizo. Resulta que con el lanzamiento de iOS 10 SDK, el UIColor inicializador init(red:green:blue:alpha:) ahora utiliza el extendido sRGB rango, así que se tiene que ajustar de acuerdo a la hora de configurar sus valores de color en el Guión gráfico.

    El Color en el guión gráfico no coincidentes UIColor

    Consulte la documentación de Apple: https://developer.apple.com/reference/uikit/uicolor/1621925-init

    • Esto lo explica todo. Usted debe ser un genio 🙂
    • Esta es la respuesta correcta para Xcode 8+
    • Esta es la cosa más frustrante que nunca.
    • Gracias, este es perfecto.
    • Muchas gracias, esto es excelente!
    • Debe haber una medalla olímpica de oro otorgado por esta respuesta.
    • Gracias por el aviso! Es posible aplicar este cambio a nivel mundial, a través de cada Generador de Interfaz.xib y .storyboard) archivo sin correr algún tipo de manual de guión?
    • Impresionante! Trabajó como un encanto 🙂
    • Creo que esto da una muy buena explicación sobre lo que debe hacer: lembergsolutions.com/blog/…
    • La votación de esta respuesta por la medalla de oro 🙂

  2. 36

    He tenido el mismo problema. Yo estaba viendo de tiempo de ejecución de los valores RGB de los colores de los storyboards la no coincidencia de UIColors creado en tiempo de ejecución en el código. Yo era capaz de solucionar este problema en los storyboards por establecer el color para ser «Genérico RGB» (vs defecto de sRGB) cuando la configuración. Aquí está una captura de pantalla de lo que te estoy hablando en IB:

    El Color en el guión gráfico no coincidentes UIColor

    • Creo que yo había intentado antes, pero parece que para mantener los valores correctos con el Genérico RGB ahora en Xcode 6.2, gracias
    • hey @Nick. yo también estoy en Xcode 6.2 y tenía el mismo problema que usted describe donde no mantener los valores establecidos. Tienes que jugar con un poco; hay condiciones que hacen que se restablezca (es un poco buggy, pero yo era capaz de trabajar alrededor de ellos).
    • Wow, gracias. Esta solucionado mi problema.
    • gracias ! Difícil de encontrar..
    • Por favor, consulte @Camilo M respuesta si estás en ios 10 xcode 8
  3. 8

    Swift 3

    En mi caso, ¿qué fue exactamente precisa fue LCD a Color de:

    El Color en el guión gráfico no coincidentes UIColor

    Espero haber ayudado : D

    • wow, cambiar los perfiles mucho, me puede confirmar esto funciona en XCode 9.
  4. 2

    Con el código, UIColor init(rojo:verde:azul:alfa:) método de devolución de color del objeto con el espacio de color sRGB;
    Con xib /StoryBoard, necesitamos seleccionar «sRGB IEC…» si queremos conseguir el mismo aspecto como el uso de código.

    Tales como:

    UIColor.init(red: (20.0/255.0), green: (20.0/255.0), blue: (20.0/255.0), alpha: 1.0)

    xib /StoryBoard captura de pantalla

    Realidad,este problema no tiene nada que ver con iOS 10.
    Después de que iOS 10, UIColor init utiliza extendido «sRGB» en lugar de sRGB. Y esto le causa problemas sólo cuando hacemos uso de r g b por debajo de valores de 0.0 y por encima de 1.0.

    iOS 10 UIColor relacionados

  5. 1

    Parece que es un error. Cuando el registro de la configuración del color del IB en el código, tiene los valores H:27.982594 S:0.899257 B:0.953253

    He presentado un informe de errores a Apple: rdar://19744216

    Gracias a Zaph

    Para iniciar sesión:

    CGFloat cols[4];
    [color getHue:&cols[0] saturation:&cols[1] brightness:&cols[2] alpha:&cols[3]];
    NSLog(@"H:%f S:%f B:%f %f",cols[0]*360, cols[1], cols[2], cols[3]);

Dejar respuesta

Please enter your comment!
Please enter your name here