Pergunta

Fundo: Meu aplicativo tem uma janela principal que contém alguns objetos NSView menores, cada uma das quais contém vários controles diferentes, rótulos, imagens, etc. Um destes pontos de vista (e tudo o que ele contém) é desativado em resposta a uma determinada bandeira. Quando a bandeira está definido, eu automaticamente desativar e cinza-out todos os controles embutidos dentro desse NSView.

Pergunta: eu gostaria de saber como Escurecer o NSView desativado. O efeito que eu estou procurando seria algo como desenhar uma caixa preta transparente 50% em cima do NSView desativado. O pano de fundo e todos os controles ainda seria visível, mas as cores seria um tom mais escuro. Existe uma maneira simples de fazer isso?

Foi útil?

Solução

CoreAnimation em 10,5 deve fornecer uma maneira fácil de colocar uma camada translúcida acima de um ponto de vista. Você pode criar uma camada preta na frente da vista, com a opacidade em 0%. Quando você quiser escurecer a vista, defina a opacidade da camada de preto para 50%, ea vista será escurecido sem problemas.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top