I created a new project. I linked QuartzCore.framework and imported <QuartzCore/QuartzCore.h> into ViewController.m .
And here is the code.
- (void)viewDidLoad { [super viewDidLoad]; NSLog(@"view height %f", self.view.frame.size.height); // returns 667 on iPhone 6 NSLog(@"view width %f", self.view.frame.size.width); // returns 375 on iPhone 6 NSLog(@"layers count %lu", self.view.layer.sublayers.count); // returns 2 // Gradient UIColor *colorOne = [UIColor blueColor]; UIColor *colorTwo = [UIColor greenColor]; NSArray *colorArray = @[colorOne, colorTwo]; NSNumber *locationOne = [NSNumber numberWithFloat:0.0]; NSNumber *locationTwo = [NSNumber numberWithFloat:1.0]; NSArray *locationArray = @[locationOne, locationTwo]; CAGradientLayer *gradientLayer = [CAGradientLayer layer]; gradientLayer.frame = self.view.frame; gradientLayer.colors = colorArray; gradientLayer.locations = locationArray; [self.view.layer insertSublayer:gradientLayer atIndex:0]; //[self.view.layer insertSublayer:gradientLayer above:[self.view.layer.sublayers firstObject]]; // didn't work either NSLog(@"layers count %lu", self.view.layer.sublayers.count); //returns 3 }
I tried setting the background color of the view to clearColor by calling it in viewDidAppear , but none of them worked. I really donβt know what I am missing. Thanks for any help.
source share