3

我有一个 UILabel 并且这个标签有一个填充的背景色(它是我的 textView 的标题)。我想启用一个阴影,以便这个暗影落在 textview 上。

我已经在我的标签文本上实现了阴影。

        descriptionLabel.layer.shadowColor = [[UIColor blackColor] CGColor];
        descriptionLabel.layer.shadowOffset = CGSizeMake(4.0f, 0.0f);
        descriptionLabel.layer.shadowOpacity = 1.0f;
        descriptionLabel.layer.shadowRadius = 1.0f;

但是我希望在标签的完整框架下方有阴影(而不是文本)。

4

1 回答 1

3

您可以将阴影路径更改为显式矩形,而不是使用图层内容:

CGPathRef shadowPath = CGPathCreateWithRect(descriptionLabel.bounds, NULL);
descriptionLabel.layer.shadowPath = shadowPath;
CGPathRelease(shadowPath);

在向视图添加阴影时,这也是提高渲染性能的一种非常常见的技术。绘制一个固定的矩形阴影将比基于图层内容的阴影快很多倍。

于 2012-05-31T12:37:12.833 回答