Тень UIView только на одном другом представлении

Есть много вопросов о том, как нарисовать тень для вида. Но как мне сделать так, чтобы мое представление отбрасывало тень, которую принимает только одно другое представление?


person Cornelius    schedule 28.09.2012    source источник


Ответы (2)


Если вид A — это вид с тенью, а вид B — родительский для A, вы можете установить для masksToBounds свойство слоя B значение YES.

Содержимое B и его подпредставления не будут отображаться за пределами B. Они будут обрезаны.

Подробнее здесь: Что делает UIView layer.masksToBounds, если установить ДА?

Однако, если вы хотите, чтобы тень падала на более сложную сцену, вам может понадобиться немного больше конкретики.

person BiGGA    schedule 28.09.2012

  • Сделайте приложение с белым фоном.
  • Сделайте свой вид плюс тень.
  • Сделайте снимок экрана.
  • Используйте снимок экрана в исходном приложении.

Конечно, вы также можете сделать изображение на лету в коде, но это немного сложнее. В любом случае, это будет код, который вам не нужен в вашем окончательном приложении.

person Mundi    schedule 28.09.2012