【发布时间】:2013-05-11 10:57:58
【问题描述】:
要向 UILabel 添加背景渐变,我使用以下代码。
在使用渐变之前,UILabel 是这样出现的。
现在,要添加渐变,我使用以下代码。
CAGradientLayer *gradLayer=[CAGradientLayer layer];
gradLayer.frame=self.myView.layer.bounds;
[gradLayer setColors:[NSArray arrayWithObjects:(id)([UIColor redColor].CGColor), (id)([UIColor cyanColor].CGColor),nil]];
gradLayer.endPoint=CGPointMake(1.0, 0.0);
[self.myView.layer addSublayer:gradLayer];
UILabel 如下,但没有文字。
我也尝试在UILabel层的底部添加该层但没有成功。
[self.myView.layer insertSublayer:gradLayer atIndex:0];
【问题讨论】:
-
尝试将渐变添加到视图,然后将标签添加为该视图的子视图。如果您将标签的颜色设置为
[UIColor clearColor],则应显示渐变和文本。 -
所以你的意思是说,不能为 UILabel 设置渐变。那么按照你的说法,我将不得不添加一个 UIView,设置它的渐变,然后添加 UILabel。很好,但是如果要添加许多 UILabel,则引入对象会增加内存占用
-
我不认为每个
UILabel多一个简单的UIView会影响内存。
标签: ios uilabel cagradientlayer