Подтвердить что ты не робот

Снимите тень справа и внизу от uiview

Мне нужно отбросить тень справа и внизу от uiview. Я делаю это в построителе интерфейса. Но я вижу, что тень упала до вершины его. Проведенный differnt sizes.but не смог получить.

layer.masksToBound=No
layer.shadowOpacity=0.15
layer.shadowRadius=2
layer.shadowOffSet={10,-10}   //Values being set in Interfacebuilder.

Тем не менее это уменьшает тени вверху. Что делать, чтобы получить снизу.

4b9b3361

Ответ 1

Попробуйте использовать следующий код, это может помочь вам

    myView.layer.shadowColor = [UIColor purpleColor].CGColor;
    myView.layer.shadowOffset = CGSize(5, 5);
    myView.layer.shadowOpacity = 1;
    myView.layer.shadowRadius = 1.0;

Я тестировал этот код, и он работает и выводит:

enter image description here

Ответ 2

Привет, я использовал ниже код, он предоставит вам тень, которую вы хотите.

 UIBezierPath *shadowPath = [UIBezierPath bezierPathWithRect:_viewShadow.bounds];
_viewShadow.layer.masksToBounds = NO;
_viewShadow.layer.shadowColor = [UIColor blackColor].CGColor;
_viewShadow.layer.shadowOffset = CGSizeMake(10.0f, 5.0f);  /*Change value of X n Y as per your need of shadow to appear to like right bottom or left bottom or so on*/
_viewShadow.layer.shadowOpacity = 0.5f;
_viewShadow.layer.shadowPath = shadowPath.CGPath;

Также masksToBounds является imp, поскольку он отключает отсечение подслоев, которые расширяются дальше границ представления. Если вы положите его YES, тогда вы не увидите тень, поскольку он заархивирует подслой, где еще в НЕТ, чтобы позволить выравнивать слой.

Ответ 3

В Swift 3, CGSizeMake больше не существует. Он был изменен на CGSize(width: 20, height: 10). Таким образом, shadowOffset можно установить таким образом в Swift 3:

myView.layer.shadowOffset = CGSize(width: 20, height: 10)

Ответ 4

Я думаю, что теневое смещение неверно. Это должно быть {10, 10}, например:

[layer setShadowOffset:CGSizeMake( 10 , 10 ) ];

Ответ 5

Я узнал, что эти значения дают хороший результат:

myView.layer.shadowColor = UIColor.black.cgColor
myView.layer.shadowOpacity = 0.25
myView.layer.shadowRadius = 3
myView.layer.shadowOffset = CGSize(width: 1, height: 1) // shadow on the bottom right

введите описание изображения здесь