@class CALayer;
@class CAGradientLayer;
@interface GradientView : UIView
@property(nonatomic, strong, readonly) CAGradientLayer *gradientLayer;
- (void)setColors:(NSArray *)colors;//自己用的时候传一个装有UIColor对象的数组
@end
@implementation GradientView
- (id)init {
return [selfinitWithFrame:CGRectZero];
}
+ (Class)layerClass {
return [CAGradientLayerclass];
}
- (CAGradientLayer *)gradientLayer {
return (CAGradientLayer *)self.layer;
}
- (void)setColors:(NSArray *)colors {
NSMutableArray *cgColors = [NSMutableArrayarray];
for (UIColor *colorin colors) {
[cgColors addObject:(__bridgeid)color.CGColor];
}
self.gradientLayer.colors = cgColors;
}
@end