2012-08-14 12 views
5

Tengo una NSPopover en una aplicación Cocoa, y desde Lion, se ve como semitransparente, por lo que cualquier campo de texto, tablas, etc. que se superpone, ahora se muestra debajo y parece realmente extraño. Revisé los documentos de referencia de la clase de Apple, pero no parece haber una manera de cambiarlo para que sea opaco. Los únicos dos valores de propiedad que parecen estar disponibles para especificar la apariencia son NSPopoverAppearanceMinimal y NSPopoverAppearanceHUD, pero ninguno de estos parece estar relacionado con alfa u opacidad. ¿Es la única manera de hacer opaco un NSPopover al sobrepasar DrawRect? o alguien sabe de una mejor manera de hacerlo? Parece que esté disponible para UIPopover en IOS, pero no NSPopover de cacao ...¿Desea cambiar la opacidad de un NSPopover? ¿Es posible?

+0

¿Qué versión de OSX son estás usando? No veo ese comportamiento con la apariencia mínima, me parece bastante opaco. Si desea cambiar el fondo, es bastante fácil agregar un NSBox (del tipo personalizado) para cubrir toda la vista y luego darle el color de fondo que desee. – rdelmar

+0

Estoy usando OSX 10.8. En su mayoría es opaco, pero aún se puede ver el texto detrás del popover ligeramente. Intenté agregar NSBox (de tipo personalizado) para cubrir todo, lo cual funcionó, pero se dibuja sobre el texto que está en el popover, e incluso si se coloca en la capa más inferior (en IB), todavía representa los campos de texto que están contenidos en el Popover. Estoy seguro de que hay una manera de hacerlo programáticamente ... intentaré publicar la solución aquí tan pronto como me dé cuenta. ¡Gracias! –

+0

Los campos de texto y cualquier otro elemento de UI que tenga deben estar incrustados en el cuadro; para ello, seleccione todos ellos y luego haga clic en la opción "Incrustar en" en el menú Editor. Esto los convierte en todas las subvistas del cuadro, y aparecerán en la parte superior. – rdelmar

Respuesta

Cuestiones relacionadas