nsmenu nsmenuitem nscolor nsstatusbar yosemite

nsmenu - ¿Cómo acceder al menú del sistema seleccionado en color azul?



nsmenuitem nscolor (2)

Aquí hay una idea: tal vez debería usar el efecto Vibrancy y derivarse de NSVisualEffectView . Sabía que había visto un hilo muy similar en algún lugar del pasado, y me tomó bastante tiempo encontrarlo. Aquí está:

Dificultad para igualar el fondo vibrante de un Yosemite NSMenuItem que contiene una vista personalizada

Creo que la respuesta de Matthes a esa pregunta lo llevaría a la resolución de su problema. Asegúrate de comprobarlo. Espero que sirva de ayuda - ¡Buena suerte y denuncie!

Estoy trabajando en una aplicación que tiene un NSView personalizado en un NSStatusBar que realiza todo el dibujo cuando el usuario hace clic en él. Pero aquí está el problema, el color que estoy dibujando actualmente ya que el color de fondo de la vista no es el mismo que el color azul del sistema.

El color de mi aplicación:

Color del elemento del menú de Twitter (sistema):

Como se ve claramente, mi color azul es mucho más claro que el sistema. Este es el código que estoy usando actualmente (y funcionó perfectamente en versiones anteriores a Yosemite):

[[NSColor selectedMenuItemColor] set]; NSRectFill(rect);

Incluso he intentado seleccionar el color del elemento del menú, pero parece que el fondo de pantalla se ve afectado por el color debajo de la barra de menús.
¿Alguna idea sobre cómo lograr el aspecto del sistema?


Como dijiste, en Yosemite, los muelles, las barras de estado, etc. se ven afectados por lo que haya detrás de ellos. Intente habilitar System Preferences > Accessibility > Display > Reduce Transparency y verá cómo se ve su color sin esta función.