我正在使用CAGradientLayer
to 作为我的图像的图层。我使用这段代码:
UIImage *image = [UIImage imageNamed:@"perfect.jpg"];
[testImage setImage:image];
CAGradientLayer *myLayer = [CAGradientLayer layer];
myLayer.anchorPoint = CGPointZero;
//starts in bottom left
myLayer.startPoint = CGPointMake(0.0f,0.5f);
//ends in top right
myLayer.endPoint = CGPointMake(0.5f, 0.0f);
UIColor *outerColor = [UIColor colorWithWhite:1.0 alpha:0.0];
UIColor *innerColor = [UIColor colorWithWhite:1.0 alpha:1.0];
//an array of colors that dictatates the gradient(s)
myLayer.colors = @[(id)outerColor.CGColor, (id)outerColor.CGColor, (id)innerColor.CGColor, (id)innerColor.CGColor];
//these are percentage points along the line defined by our startPoint and endPoint and correspond to our colors array. The gradient will shift between the colors between these percentage points.
myLayer.locations = @[@0.0, @0.15, @0.5, @1.0f];
myLayer.bounds = CGRectMake(0, 0, CGRectGetWidth(testImage.bounds), CGRectGetHeight(testImage.bounds));
testImage.layer.mask = myLayer;
[self.view addSubview:testImage];
但是渐变只应用于我的图像的侧面。我想要的是将渐变应用为圆形或径向渐变。我怎样才能做到这一点?