Objective-C angle gradients for iOS
Objective-C Ruby
Switch branches/tags
Latest commit 7d3b2c7 Sep 24, 2016 @paiv committed on GitHub Merge pull request #15 from dmsl1805/master
Start angle property added


cocoapods build status


AngleGradientLayer is a CALayer implementation of angle gradient.



pod 'AngleGradientLayer', '~> 1.0'

[Swift] Using in your code

import AngleGradientLayer

class MyView: UIView {

    override class func layerClass() -> AnyClass {
        return AngleGradientLayer.self

    override init(frame: CGRect) {
        super.init(frame: frame)

        let l: AngleGradientLayer = self.layer as! AngleGradientLayer
        l.colors = [
            UIColor(red: 0, green: 0, blue: 0.5, alpha: 1).CGColor,
            UIColor(red: 1, green: 1, blue: 0.4, alpha: 1).CGColor]

[Objective-C] Using in your code

(See demo project for more.)

#import "AngleGradientLayer.h"

@interface MyView : UIView

@implementation MyView

+ (Class)layerClass
	return [AngleGradientLayer class];

- (id)initWithFrame:(CGRect)frame
	if (!(self = [super initWithFrame:frame]))
		return nil;

	AngleGradientLayer *l = (AngleGradientLayer *)self.layer;
	l.colors = [NSArray arrayWithObjects:
		(id)[UIColor colorWithRed:0 green:0 blue:0.5 alpha:1].CGColor,
		(id)[UIColor colorWithRed:1 green:1 blue:0.4 alpha:1].CGColor,

	return self;



When working with semi-transparent views, be sure to set backgroundColor property on the layer's view

myview.backgroundColor = UIColor.clearColor()

backgroundColor by default is nil, blending to black color.