【发布时间】:2016-06-11 07:48:23
【问题描述】:
我用CAShapeLayer画了一个圆,设置为CAGradientLayer的mask,代码如下:
CAShapeLayer *circleShapeLayer = [CAShapelayer new];
// draw circle path code here...
CAGradientLayer *gradientLayer = [CAGradientLayer layer];
gradientLayer.colors = @[(__bridge id)[UIColor whiteColor].CGColor,
(__bridge id)[UIColor clearColor].CGColor];
// self here means a UIView
gradientLayer.mask = circleShapeLayer;
gradientLayer.frame = self.bounds;
[self.layer addSublayer:gradientLayer];
当我运行应用程序时,它会显示一个渐变圆圈,但是渐变很奇怪。
我想要的是一个圆圈,起点是白色,终点是透明色,应该是这样的:
但是模拟器屏幕中圆圈的颜色是:
颜色是对称的。
我认为问题是我没有正确设置gradientLayer.colors,我该如何解决?
【问题讨论】:
标签: ios objective-c cagradientlayer