介紹關鍵幀動畫之前先介紹一下什麼是補間動畫
補間動畫:兩個值發生改變,中間產生的動畫效果叫做部件動畫
關鍵幀動畫與基礎動畫的區別:基礎動畫只能是某個屬性的初始值到另乙個值產生的動畫效果
關鍵幀動畫支援多個值(
values
)或者乙個路徑(
path
)關鍵幀動畫的屬性
cakeyframeanimation
values
:值的陣列
path
:值得路徑
keytimes:
時間值(0,
1)timingfunctions
:速度控制的陣列
calculationmode
:動畫樣式
kcaanimationlinear
自定義控制動畫的時間(線性)可以設定
keytimes
kcaanimationdiscrete
離散動畫
沒有任何補間動畫
使用keytimes@[@0.3,@0.5,@1.0];
kcaanimationpaced
節奏動畫
自動計算動畫的運動時間
kcaanimationcubic
曲線動畫
需要設定
timingfunctions
kcaanimationcubicpaced
節奏曲線動畫
自動計算
rotationmode
:旋轉的樣式
kcaanimationrotateauto
自動kcaanimationrotateautoreverse
自動翻轉
具體**:實現花瓣掉落的效果
#import
"viewcontroller.h"
@inte***ce
viewcontroller()
//背景
@property
(nonatomic
, strong
) calayer
*layer; //
花瓣 @property
(nonatomic
, strong
) calayer
*petallayer;
@end
@implementation
viewcontroller
- (void
)viewdidload
- (void
)demo1
- (void
)demo2:(
cgpoint
)topoint
- (void
)touchesbegan:(
nsset
<
uitouch
*> *)touches withevent:(
uievent
*)event
- (calayer
*)petallayer
_petallayer
= [calayer
layer];
_petallayer
.position
= cgpointmake
(self
.view
.center.x
, 50);
uiimage
*image =[
uiimage
imagenamed:@"
花瓣4"];
_petallayer
.bounds
= cgrectmake(0
, 0, image.
size
.width
, image.
size
.height);
_petallayer
.contents
= (id
)image.
cgimage;
return
_petallayer;
} - (calayer
*)layer
_layer
= [calayer
layer];
_layer
.position
= cgpointmake
(self
.view
.center.x
, self
.view
.center.y
+100);
uiimage
*image =[
uiimage
imagenamed
:@"bgimage"];
_layer
.bounds
= cgrectmake(0
, 0, image.
size
.width/2
, image.
size
.height/2
); _layer
.contents
= (id
)image.
cgimage;
return
_layer;
}
動畫(過渡動畫 關鍵幀動畫)
過渡動畫 寫到css樣式裡 transition all 1s ease in out 2s 變化曲線的值 ease 預設值,先快再快再慢 ease in 淡入 動畫剛開始的時候變化慢 ease out 淡出 動畫快結束的時候變化慢 ease in out 淡入淡出 開始慢,中間塊,結束慢 line...
iOS開發之關鍵幀動畫
cabasicanimation揭示了大多數隱式動畫背後以來的機制,但是顯示的給圖層新增cabasicanimation相較於隱式動畫而言,之恩能夠說是非禮不討好。cakeyframeanimation是一種uikit沒有暴露出來但是功能強大的類。和cabasicanimation類似,cakeyf...
動畫技術 關鍵幀 keyFrame
動畫技術 關鍵幀 keyframe 關鍵幀是一種常用的動畫技術,其基本原理是將動畫序列中比較關鍵的幀提取出來,而其他幀根據時間用這些關鍵幀插值計算得到。乙個簡單的關鍵幀結構 typedef struct skeyframe skeyframe 這是乙個非常簡化的結構,只包含時間和矩陣。但從這個結構可...