UILabel文字颜色透明度与图层阴影的地方?
我有一个UILabel
,我试图应用一个半透明的渐变作为一种颜色。 例如,在我的UILabel
子类中,我试图用这种方法设置渐变颜色:
self.textColor = [UIColor colorWithPatternImage:someTransparentGradient];
然而,在解决这个问题的时候,我发现UILabel
在图层阴影到位时似乎无法用透明度绘制。 我试图设置文本颜色清除:
self.textColor = [UIColor clearColor];
但是文本最终变成了白色。 想法?
如果将文本颜色设置为清除,则可以自行复制问题,然后将图层阴影应用于文本视图。
如果你已经通过nib创build了UILabel
并且在initWithFrame
设置了textColor,你将不会得到期望的结果。
在UILabel
子类中,写入initWithCoder
并设置颜色。
-(id)initWithCoder:(NSCoder *)aDecoder { self = [super initWithCoder:aDecoder]; if (self) { // Initialization code self.textColor = [UIColor clearColor]; } return self; }
编辑
看,这是默认(灰色)背景的屏幕截图。
这是白色背景的截图
请下载示例应用程序并尝试。
我通常不会接受自己的答案,但在这种情况下,我必须。 这似乎是一个错误。 每当将图层阴影应用于UILabel
,不再支持文本透明度。 我将提交一个雷达。