国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > iOS > 正文

iOS漸變圓環旋轉動畫CAShapeLayer CAGradientLayer

2019-10-21 18:52:25
字體:
來源:轉載
供稿:網友

iOS漸變圓環旋轉動畫CAShapeLayer CAGradientLayer

iOS,漸變圓環旋轉動畫,iOS漸變圓環旋轉動畫實例詳解,漸變動畫

shape.gif

iOS,漸變圓環旋轉動畫,iOS漸變圓環旋轉動畫實例詳解,漸變動畫

demo.png

- (void)viewDidLoad { [super viewDidLoad]; // Do any additional setup after loading the view, typically from a nib. CALayer *layer = [CALayer layer]; layer.backgroundColor = [UIColor redColor].CGColor; //圓環底色 layer.frame = CGRectMake(100, 100, 110, 110); //創建一個圓環 UIBezierPath *bezierPath = [UIBezierPath bezierPathWithArcCenter:CGPointMake(55, 55) radius:50 startAngle:0 endAngle:M_PI*2 clockwise:YES]; //圓環遮罩 CAShapeLayer *shapeLayer = [CAShapeLayer layer]; shapeLayer.fillColor = [UIColor clearColor].CGColor; shapeLayer.strokeColor = [UIColor redColor].CGColor; shapeLayer.lineWidth = 5; shapeLayer.strokeStart = 0; shapeLayer.strokeEnd = 0.8; shapeLayer.lineCap = @"round"; shapeLayer.lineDashPhase = 0.8; shapeLayer.path = bezierPath.CGPath; //顏色漸變 NSMutableArray *colors = [NSMutableArray arrayWithObjects:(id)[UIColor redColor].CGColor,(id)[UIColor whiteColor].CGColor, nil]; CAGradientLayer *gradientLayer = [CAGradientLayer layer]; gradientLayer.shadowPath = bezierPath.CGPath; gradientLayer.frame = CGRectMake(50, 50, 60, 60); gradientLayer.startPoint = CGPointMake(0, 1); gradientLayer.endPoint = CGPointMake(1, 0); [gradientLayer setColors:[NSArray arrayWithArray:colors]]; [layer addSublayer:gradientLayer]; //設置顏色漸變 [layer setMask:shapeLayer]; //設置圓環遮罩 [self.view.layer addSublayer:layer]; //動畫 CABasicAnimation *scaleAnimation1 = [CABasicAnimation animationWithKeyPath:@"transform.scale"]; scaleAnimation1.fromValue = [NSNumber numberWithFloat:1.0]; scaleAnimation1.toValue = [NSNumber numberWithFloat:1.5]; scaleAnimation1.autoreverses = YES;// scaleAnimation1.fillMode = kCAFillModeForwards; scaleAnimation1.duration = 0.8; CABasicAnimation *rotationAnimation2 = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"]; rotationAnimation2.fromValue = [NSNumber numberWithFloat:0]; rotationAnimation2.toValue = [NSNumber numberWithFloat:6.0*M_PI]; rotationAnimation2.autoreverses = YES;// scaleAnimation.fillMode = kCAFillModeForwards; rotationAnimation2.repeatCount = MAXFLOAT; rotationAnimation2.beginTime = 0.8; //延時執行,注釋掉動畫會同時進行 rotationAnimation2.duration = 2; //組合動畫 CAAnimationGroup *groupAnnimation = [CAAnimationGroup animation]; groupAnnimation.duration = 4; groupAnnimation.autoreverses = YES; groupAnnimation.animations = @[scaleAnimation1, rotationAnimation2]; groupAnnimation.repeatCount = MAXFLOAT; [layer addAnimation:groupAnnimation forKey:@"groupAnnimation"];}- (void)didReceiveMemoryWarning { [super didReceiveMemoryWarning]; // Dispose of any resources that can be recreated.}@end

關鍵的地方在于CABasicAnimation對象的初始化方式中keyPath的設定。在iOS中有以下幾種不同的keyPath,代表著不同的效果:

iOS,漸變圓環旋轉動畫,iOS漸變圓環旋轉動畫實例詳解,漸變動畫

以上就是iOS漸變圓環旋轉動畫 的資料整理,后續繼續補充相關資料,謝謝大家對本站的支持!


注:相關教程知識閱讀請移步到IOS開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 洪江市| 南澳县| 德化县| 花垣县| 贵州省| 若羌县| 内黄县| 保山市| 台山市| 双江| 江北区| 凭祥市| 舟曲县| 日喀则市| 格尔木市| 四子王旗| 永修县| 木兰县| 中阳县| 枣强县| 天峻县| 天全县| 泰州市| 高青县| 绥化市| 高雄县| 湖州市| 嘉黎县| 青河县| 印江| 农安县| 县级市| 略阳县| 柏乡县| 嫩江县| 边坝县| 新沂市| 堆龙德庆县| 庆元县| 长岛县| 桂阳县|