Как я могу затемнить все, что отображается в одном NSView?

StackOverflow https://stackoverflow.com/questions/466249

  •  19-08-2019
  •  | 
  •  

Вопрос

Фон . В моем приложении есть главное окно, содержащее несколько небольших NSView объектов, каждый из которых содержит несколько различных элементов управления, метки, изображения и т. д. Одно из этих представлений (и все, что с ним связано). содержит) отключен в ответ на данный флаг. Когда флаг установлен, я автоматически отключаю и выделяю серым цветом все элементы управления, встроенные в него <=>.

Вопрос . Мне бы хотелось узнать, как затемнить инвалидов <=>. Эффект, который я ищу, будет выглядеть примерно так: нарисовать прозрачный черный прямоугольник на 50% поверх отключенных <=>. Фон и все элементы управления все еще будут видны, но цвета будут темнее. Есть ли простой способ сделать это?

Это было полезно?

Решение

CoreAnimation в 10.5 должен обеспечить простой способ разместить полупрозрачный слой над видом. Вы можете создать черный слой перед видом с непрозрачностью 0%. Если вы хотите затемнить изображение, установите непрозрачность черного слоя на 50%, и изображение будет затемнено плавно.

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top