Objectivec将阴影设置为父视图

时间:2015-07-09 08:27:57

标签: objective-c

我想将阴影设置为父视图。但我希望儿童观点保持不变。

我现在所做的是

parentView.layer.shadowRadius = 0.8;
parentView.layer.shadowOpacity = 0.3;
parentView.layer.shadowOffset = CGSizeMake(1.0, 1.4);

但是,如果我这样做,子视图也会更改。有没有办法设置阴影但保持子视图相同。

谢谢

1 个答案:

答案 0 :(得分:9)

您的parentView是否透明?我已经设置了一个简单的项目并使用了你的代码。我已经改变了一些值来看到一个更好的阴影。这是它的外观:

enter image description here

如您所见 - 子视图中没有阴影。 parentView的背景颜色设置为白色。当我将其设置为清除颜色时,就会发生这种情况。我添加了边框以证明parentView仍在那里:

enter image description here

Apple Docs证明了这一点:

  

图A-7显示了同一样本层的几个不同版本   应用了红色阴影。左侧和中间版本包括a   背景颜色所以阴影只出现在边框周围   层。但是,右侧的版本不包含背景   颜色。在这种情况下,阴影应用于图层的内容,   边框和子图层。

enter image description here