ios - 使用自定义颜色设置渐变

ios - set gradient with custom colors

我正在尝试使用自定义颜色在我的主视图上设置渐变。虽然视图显示为完全白色。这个记录有什么问题?

 CAGradientLayer *gradient = [CAGradientLayer new];

 gradient.colors = @[(id)[UIColor colorWithRed:92.0 green:196.0 blue:244.0 alpha:1].CGColor,
                    (id)[UIColor colorWithRed:47.0 green:146.0 blue:229.0 alpha:1].CGColor];
gradient.frame = self.backGroundView.bounds;
gradient.locations = @[@0.5, @0.5];

[self.backGroundView.layer insertSublayer:gradient atIndex:0];

这是正确显示的,蓝色和红色切割了视图高度的一半。

CAGradientLayer *gradient = [CAGradientLayer new];
gradient.colors = @[(id)[UIColor redColor].CGColor, (id)[UIColor blueColor].CGColor];
gradient.frame = self.backGroundView.bounds;
gradient.locations = @[@0.5, @0.5];

[self.backGroundView.layer insertSublayer:gradient atIndex:0];

你的颜色不对。 UIColor 初始化程序期望值介于 0 和 1 之间。试试这个:

gradient.colors = @[(id)[UIColor colorWithRed:92/255.0 green:196/255.0 blue:244/255.0 alpha:1].CGColor,
                    (id)[UIColor colorWithRed:47/255.0 green:146/255.0 blue:229/255.0 alpha:1].CGColor];