我正在尝试使用标签的UILabel
绘制CALayer
的阴影。
好吧,这是我的代码:
nameLabel = [[UILabel alloc] initWithFrame:CGRectMake(70.0, 2.0, 180.0, 40.0)];
[nameLabel setFont:[UIFont fontWithName:@"HelveticaNeue-UltraLight" size:26.0]];
[nameLabel setTextColor:[UIColor whiteColor]];
[nameLabel setClipsToBounds:NO];
[[nameLabel layer] setShadowColor:[UIColor blackColor].CGColor];
[[nameLabel layer] setShadowOffset:CGSizeMake(1.0, 2.0)];
[[nameLabel layer] setShadowRadius:20.0f];
[[nameLabel layer] setShadowOpacity:0.5f];
标签包含在
UIView
中。如果我只是将
CALayer
添加(并隐藏标签本身)作为视图的子层,则它仅显示文本,而不显示阴影。设置
setMasksToBounds
或setShouldRasterize
没有帮助。有任何想法吗?
最佳答案
shadowRadius
的正值会使阴影模糊很多,对于清晰可见的阴影,应使用较小或零的值。