欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

iOS利用UIBezierPath + CAAnimation實現(xiàn)路徑動畫效果

 更新時間:2017年10月26日 10:28:06   作者:Mazy_ma  
在iOS開發(fā)中,制作動畫效果是最讓開發(fā)者享受的環(huán)節(jié)之一,這篇文章主要給大家介紹了關于iOS利用UIBezierPath + CAAnimation實現(xiàn)路徑動畫效果的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考借鑒,下面隨著小編來一起學習學習吧。

前言

上次給大家介紹了iOS利用UIBezierPath + CAAnimation實現(xiàn)路徑動畫效果的相關內容,今天實現(xiàn)一個根據心跳路徑實現(xiàn)一個路徑動畫,讓某一視圖沿著路徑進行運動.。

效果圖如下:

核心代碼

1-首先通過 drawRect 繪制心形路徑

- (void)drawRect:(CGRect)rect {
 // Drawing code
 // 初始化UIBezierPath
 UIBezierPath *path = [UIBezierPath bezierPath];
 // 首先設置一個起始點
 CGPoint startPoint = CGPointMake(rect.size.width/2, 120);
 // 以起始點為路徑的起點
 [path moveToPoint:startPoint];
 // 設置一個終點
 CGPoint endPoint = CGPointMake(rect.size.width/2, rect.size.height-40);
 // 設置第一個控制點
 CGPoint controlPoint1 = CGPointMake(100, 20);
 // 設置第二個控制點
 CGPoint controlPoint2 = CGPointMake(0, 180);
 // 添加三次貝塞爾曲線
 [path addCurveToPoint:endPoint controlPoint1:controlPoint1 controlPoint2:controlPoint2];
 // 設置另一個起始點
 [path moveToPoint:endPoint];
 // 設置第三個控制點
 CGPoint controlPoint3 = CGPointMake(rect.size.width-100, 20);
 // 設置第四個控制點
 CGPoint controlPoint4 = CGPointMake(rect.size.width, 180);
 // 添加三次貝塞爾曲線
 [path addCurveToPoint:startPoint controlPoint1:controlPoint4 controlPoint2:controlPoint3];
 // 設置線寬
 path.lineWidth = 3;
 // 設置線斷面類型
 path.lineCapStyle = kCGLineCapRound;
 // 設置連接類型
 path.lineJoinStyle = kCGLineJoinRound;
 // 設置畫筆顏色
 [[UIColor redColor] set];
 [path stroke];
}

2-添加心形路徑View到主視圖

 HeartView *heart = [[HeartView alloc] init];
 heart.frame = CGRectMake(0, 0, Screen_Width, Screen_Height-Screen_Height);
 [self.view addSubview:heart];

3-給動畫視圖(紅色圓形視圖)添加軌跡路徑動畫

 CAKeyframeAnimation *animation = [CAKeyframeAnimation animationWithKeyPath:@"position"];
 // 設置動畫的路徑為心形路徑
 animation.path = self.path.CGPath;
 // 動畫時間間隔
 animation.duration = 3.0f;
 // 重復次數為最大值
 animation.repeatCount = FLT_MAX;
 animation.removedOnCompletion = NO;
 animation.fillMode = kCAFillModeForwards;
 // 將動畫添加到動畫視圖上
 [_demoView.layer addAnimation:animation forKey:nil];

總結

以上就是這篇文章的全部內容了,希望本文的內容對大家的學習或者工作具有一定的參考學習價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。

相關文章

  • UIImage加載圖片Images.xcassets加載方法的影響

    UIImage加載圖片Images.xcassets加載方法的影響

    這篇文章主要介紹了UIImage加載圖片Images.xcassets加載方法的影響的相關資料,需要的朋友可以參考下
    2016-12-12
  • iOS上下拉刷新控件MJRefresh使用方法詳解

    iOS上下拉刷新控件MJRefresh使用方法詳解

    這篇文章主要為大家詳細介紹了iOS上下拉刷新控件MJRefresh的使用方法,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2017-03-03
  • IOS10 配置權限詳細介紹

    IOS10 配置權限詳細介紹

    這篇文章主要介紹了IOS10 配置權限詳細介紹的相關資料,訪問相機、相冊、麥克風、通訊錄等等權限,都需要進行相關的配置,不然會直接crash,需要的朋友可以參考下
    2016-12-12
  • iOS簡單抽屜效果的實現(xiàn)方法

    iOS簡單抽屜效果的實現(xiàn)方法

    這篇文章主要為大家詳細介紹了iOS簡單抽屜效果的實現(xiàn)方法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • iOS適配iPhone XS、 iPhone XS Max and iPhone XR的方法淺析

    iOS適配iPhone XS、 iPhone XS Max and iPhone XR的方法淺析

    這篇文章主要給大家介紹了關于iOS適配iPhone XS、 iPhone XS Max and iPhone XR的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2018-09-09
  • ios app重提提交審核流程

    ios app重提提交審核流程

    本篇文章給大家講述了在APP第一次沒有審核通過后,重新提交的流程和注意的地方,學習一下吧。
    2017-12-12
  • 談談iOS開發(fā)之JSON格式數據的生成與解析

    談談iOS開發(fā)之JSON格式數據的生成與解析

    JSON格式取代了xml給網絡傳輸帶來了很大的便利,本篇文章主要介紹了iOS開發(fā):對象直接轉化成JSON詳解,具有一定的參考價值,有興趣的可以了解一下。
    2017-01-01
  • iOS實現(xiàn)app間跳轉功能

    iOS實現(xiàn)app間跳轉功能

    這篇文章主要為大家詳細介紹了iOS實現(xiàn)app間跳轉功能,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-05-05
  • XCode 加快編譯鏈接速度的方法

    XCode 加快編譯鏈接速度的方法

    這篇文章主要介紹了XCode 加快編譯鏈接速度的方法的相關資料,這里整理了三種方法,需要的朋友可以參考下
    2016-10-10
  • iOS自定義相機功能

    iOS自定義相機功能

    這篇文章主要為大家詳細介紹了iOS自定義相機功能,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-07-07

最新評論