以红色渐变为透明为例
CAGradientLayer*layer = [CAGradientLayer layer];
UIColor* inputColor0 = [UIColor colorWithRed:248./255. green:40./255. blue:31./255. alpha:1];
UIColor* inputColor1 = [UIColor colorWithRed:248./255. green:40./255. blue:31./255. alpha:0];
layer.colors = @[(__bridgeid)inputColor0.CGColor, (__bridgeid)inputColor1.CGColor];
//(0,0) (1.0,0)表示水平方向渐变,(0,0)(0,1.0)代表竖直方向渐变
CGPoint inputPoint0 = CGPointMake(0,0);
CGPoint inputPoint1 = CGPointMake(1.0,0);
layer.startPoint= inputPoint0;
layer.endPoint= inputPoint1;
//frame要和view本身的frame相同
layer.frame=self.selfFrame;
[self.layer insertSublayer:layer atIndex:0];
运行效果:

网友评论