最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

iOS漸變圓環(huán)旋轉(zhuǎn)動(dòng)畫CAShapeLayer CAGradientLayer

 更新時(shí)間:2016年09月20日 11:02:08   作者:Eric__li  
這篇文章主要介紹了iOS漸變圓環(huán)旋轉(zhuǎn)動(dòng)畫CAShapeLayer CAGradientLayer的相關(guān)資料,需要的朋友可以參考下

iOS漸變圓環(huán)旋轉(zhuǎn)動(dòng)畫CAShapeLayer CAGradientLayer

shape.gif

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; //圓環(huán)底色
 layer.frame = CGRectMake(100, 100, 110, 110);


 //創(chuàng)建一個(gè)圓環(huán)
 UIBezierPath *bezierPath = [UIBezierPath bezierPathWithArcCenter:CGPointMake(55, 55) radius:50 startAngle:0 endAngle:M_PI*2 clockwise:YES];

 //圓環(huán)遮罩
 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]; //設(shè)置顏色漸變
 [layer setMask:shapeLayer]; //設(shè)置圓環(huán)遮罩
 [self.view.layer addSublayer:layer];

 //動(dòng)畫
 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; //延時(shí)執(zhí)行,注釋掉動(dòng)畫會(huì)同時(shí)進(jìn)行
 rotationAnimation2.duration = 2;


 //組合動(dòng)畫
 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

關(guān)鍵的地方在于CABasicAnimation對(duì)象的初始化方式中keyPath的設(shè)定。在iOS中有以下幾種不同的keyPath,代表著不同的效果:

以上就是iOS漸變圓環(huán)旋轉(zhuǎn)動(dòng)畫 的資料整理,后續(xù)繼續(xù)補(bǔ)充相關(guān)資料,謝謝大家對(duì)本站的支持!

相關(guān)文章

  • IOS之UIWebView的使用(基本知識(shí))

    IOS之UIWebView的使用(基本知識(shí))

    在Android開發(fā)中有WebView作為混合模式開發(fā)的橋梁,當(dāng)然在IOS中也同樣有一個(gè) UIWebView 組件來作為混合模式開發(fā)的橋梁,那么下面就對(duì)UIWebView的一些基本知識(shí)詳解一下
    2016-02-02
  • IOS設(shè)計(jì)模式之組合設(shè)計(jì)模式

    IOS設(shè)計(jì)模式之組合設(shè)計(jì)模式

    組合模式,Composite Pattern,是一個(gè)非常巧妙的模式。幾乎所有的面向?qū)ο笙到y(tǒng)都應(yīng)用到了組合模式,接下來通過本文給大家介紹IOS設(shè)計(jì)模式之組合設(shè)計(jì)模式,需要的朋友參考下
    2016-02-02
  • iOS中sqlite的詳細(xì)用法

    iOS中sqlite的詳細(xì)用法

    在iOS中,也同樣支持sqlite。目前有很多第三方庫,封裝了sqlite操作,比如swift語言寫的SQLite.swift,對(duì)sqlite感興趣的小伙伴們可以參考一下
    2016-05-05
  • iOS10添加本地推送(Local Notification)實(shí)例

    iOS10添加本地推送(Local Notification)實(shí)例

    這篇文章主要為大家詳細(xì)介紹了iOS10添加本地推送(Local Notification)實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-09-09
  • 一道值得深入思考的iOS面試題詳解

    一道值得深入思考的iOS面試題詳解

    這篇文章主要給大家分享介紹了關(guān)于一道值得深入思考的iOS面試題,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧
    2019-02-02
  • iOS項(xiàng)目的開發(fā)命名規(guī)范教程

    iOS項(xiàng)目的開發(fā)命名規(guī)范教程

    為了團(tuán)隊(duì)各成員之間代碼的互通、可讀、易維護(hù)性,特制訂此開發(fā)規(guī)范。下面這篇文章主要給大家介紹了關(guān)于iOS項(xiàng)目的開發(fā)命名規(guī)范的相關(guān)資料,需要的朋友可以參考借鑒,下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2017-11-11
  • 模仿iOS版微信的滑動(dòng)View效果

    模仿iOS版微信的滑動(dòng)View效果

    比如我們常用的微信,對(duì)于Android版本,長按某個(gè)聊天好友,會(huì)彈出 標(biāo)為未讀,置頂聊天,刪除聊天 選項(xiàng);對(duì)于iOS的版本,右滑,會(huì)顯示出 標(biāo)為未讀,刪除 選項(xiàng)。這篇文章主要介紹了模仿iOS版微信的滑動(dòng)View,需要的朋友可以參考下
    2019-05-05
  • iOS開發(fā)使用XML解析網(wǎng)絡(luò)數(shù)據(jù)

    iOS開發(fā)使用XML解析網(wǎng)絡(luò)數(shù)據(jù)

    XML解析其實(shí)這個(gè)概念出現(xiàn)了算夠久了,以前javaweb什么到處都在用。這邊我們主要大致介紹下,然后在在ios編程如何使用。
    2016-02-02
  • iOS通過逆向理解Block的內(nèi)存模型

    iOS通過逆向理解Block的內(nèi)存模型

    自從對(duì) iOS 的逆向初窺門徑后,我也經(jīng)常通過它來分析一些比較大的應(yīng)用,參考一下這些應(yīng)用中某些功能的實(shí)現(xiàn)。這個(gè)探索的過程樂趣多多,不僅能滿足自己對(duì)未知的好奇心,還經(jīng)常能發(fā)現(xiàn)一些意外的驚喜。這篇文章主要介紹了iOS通過逆向如何深入理解Block內(nèi)存模型的相關(guān)資料。
    2017-01-01
  • Objective-C實(shí)現(xiàn)無限循環(huán)輪播器

    Objective-C實(shí)現(xiàn)無限循環(huán)輪播器

    這篇文章主要介紹了Objective-C實(shí)現(xiàn)無限循環(huán)輪播器的相關(guān)資料,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下
    2016-05-05

最新評(píng)論

漾濞| 兴山县| 彰武县| 抚顺市| 威信县| 灌南县| 陆良县| 苍南县| 崇阳县| 兰溪市| 岳阳县| 汶上县| 巴林左旗| 浦江县| 阳城县| 唐山市| 石河子市| 阿巴嘎旗| 平安县| 万州区| 诸暨市| 阿坝| 都江堰市| 武宁县| 抚顺市| 永福县| 阿拉善左旗| 梓潼县| 兰考县| 甘孜| 赣州市| 察雅县| 阜阳市| 宁强县| 清流县| 新龙县| 康平县| 永春县| 广安市| 盖州市| 招远市|