我有一個UIView,我想要在類似於下載飛行到Safari停靠欄的曲線路徑上設置動畫。我不知道該怎麼做,因爲我確定它涉及到Core Graphics和Core Animation。我發現的最後一個答案是從2011年開始使用iOS 6中棄用的函數,但無法按原樣運行。提前致謝。路徑動畫曲線核心圖形
1
A
回答
0
你想CAKeyframeAnimation它有一個路徑屬性,它將沿着動畫。
還有這裏的例子了適用於Mac和客觀C.如果你不能弄清楚,我可以張貼後來斯威夫特3例子: https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/Animation_Types_Timing/Articles/PropertyAnimations.html
0
讓我們的曲線點P1,P2, p3,p4和p5,&找到每對相鄰點的中點。將m1標記爲p1和p2的中點。類似地,m2,m3,m4。
- 將四邊形曲線添加到以p2作爲控制點的m2點。
- 將p3的四邊形曲線添加到點m3作爲控制點。
- 以p4作爲控制點,將四條曲線添加到點m4。
代碼:
CGFloat screenWidth = self.view.frame.size.width;
CGFloat screenHeight = self.view.frame.size.height;
UIView *aniView = [[UIView alloc] initWithFrame:CGRectMake(50, screenHeight, 50, 50)];
[aniView setBackgroundColor:[UIColor redColor]];
aniView.layer.cornerRadius = 25.0;
[self.view addSubview:aniView];
UIBezierPath *movePath = [UIBezierPath bezierPath];
[movePath moveToPoint:aniView.center];
[movePath addQuadCurveToPoint:CGPointMake(screenWidth-50,screenHeight-50)
controlPoint:CGPointMake(screenWidth/2,screenHeight-150)];
CAKeyframeAnimation *moveAnim = [CAKeyframeAnimation animationWithKeyPath:@"position"];
moveAnim.path = movePath.CGPath;
moveAnim.removedOnCompletion = YES;
CAAnimationGroup *animGroup = [CAAnimationGroup animation];
animGroup.animations = [NSArray arrayWithObjects:moveAnim, nil];
animGroup.duration = 2.0;
[CATransaction begin]; {
[CATransaction setCompletionBlock:^{
[aniView.layer removeAllAnimations];
[aniView removeFromSuperview];
}];
[aniView.layer addAnimation:animGroup forKey:nil];
} [CATransaction commit];
複製過去上面的代碼到一些方法,並嘗試調用方法...
相關問題
- 1. Three.js曲線路徑動畫
- 2. iPhone核心圖形動畫
- 3. 合併核心圖形中的路徑?
- 4. 核心圖形旋轉路徑
- 5. 使用核心圖形,動畫
- 6. 核心情節條形圖動畫
- 7. 優化核心圖形動畫(iPhone)
- 8. 核心圖形繪製的核心動畫
- 9. 滾動曲線路徑
- 10. 在畫布上繪製曲線路徑?
- 11. 安卓繪製曲線路徑動畫畫布
- 12. SVG - 沿着路徑的動畫矩形;矩形中心總是在路徑上
- 13. 將直線SVG路徑動畫化爲曲線?
- 14. SVG:沿曲線路徑追加形狀
- 15. 核心動畫動畫圖像數組
- 16. 如何在覈心圖形中連續繪製曲線ios
- 17. 可可二維圖形:石英,核心圖像或核心動畫?
- 18. 核心動畫中關鍵路徑的作用是什麼?
- 19. 核心動畫:讓內容如下陰影路徑
- 20. MonoTouch核心圖形... vs Android畫布
- 21. 與核心圖形繪製路徑的問題 - iPhone
- 22. 獲取核心圖形中貝塞爾路徑的起點
- 23. 使用CPTScatterPlot縮放核心圖形筆劃路徑
- 24. 核心圖形,如何在運行時畫線?
- 25. 在swift 3和核心圖形中畫出一條直線
- 26. 核心圖形 - 在一個角度畫一條線
- 27. Kendoui核心文件路徑
- 28. SVG路徑曲線在相反方向上動畫
- 29. SVG +路徑動畫中的曲線+響應
- 30. 沿着XNA的曲線路徑動畫雪碧
我知道的Objective-C也一樣,所以我會檢查出來 –