如何在iPhone中将渐变色设置为UILabel的背景

时间:2013-03-13 10:13:55

标签: uilabel cagradientlayer

我使用以下代码将渐变颜色设置为标签的背景但不影响我做错了什么? 代码在这里:

    [self.teamName setTextColor:[UIColor whiteColor]];
    [self.teamName setBackgroundColor:[UIColor clearColor]];
    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.frame = self.teamName.bounds;
    gradientLayer.colors = [NSArray arrayWithObjects:(id)[[UIColor whiteColor]CGColor], (id)[[UIColor blackColor]CGColor], nil];
    [self.teamName.layer insertSublayer:gradientLayer atIndex:0];

2 个答案:

答案 0 :(得分:6)

当我将CAGradientLayer插入主视图时,它工作正常。

[self.teamName setTextColor:[UIColor whiteColor]];
    [self.teamName setBackgroundColor:[UIColor clearColor]];
    CAGradientLayer *gradientLayer = [CAGradientLayer layer];
    gradientLayer.frame = self.teamName.bounds;
    gradientLayer.colors = [NSArray arrayWithObjects:(id)[[UIColor whiteColor]CGColor], (id)[[UIColor blackColor]CGColor], nil];
    [self.view.layer insertSublayer:gradientLayer atIndex:0];

答案 1 :(得分:1)

所以我也试图这样做!我终于通过在标签后面放置一个UIView并更改标签背景颜色来使其工作。我在故事板中做到了这一点。