iOS開發 簡單動畫筆記

2021-06-25 14:23:11 字數 2739 閱讀 2516

今天因為工作需要,所以在ios試著做一些動畫特效;

1.  在簡單動畫中,**要寫在兩行**之間;

[uiview

beginanimations:

nilcontext:

null];

//動畫**在這裡裡面

[uiview

commitanimations];

關於這兩行**,我發現這兩行**關係到新的執行緒;在這兩行**之間的**可能還沒進行完。就會進行下面的**;

所以!要實現一些動畫效果結束後執行的效果,要用到**;

moveanim.delegate=self;

然後會呼叫到自帶的**方法;

-(void)animationdidstop:(caanimation *)anim finished:(bool)flag

這是乙個移動效果的**;

uiview

beginanimations:

nilcontext:

null];

[nsthread

sleepfortimeinterval:

0.2]; 

//延遲動作發生產生一點動畫效果

cgaffinetransform

ptransform =cgaffinetransformmaketranslation(

0, -

1200

);//這裡寫你要移動的距離

//使檢視使用這個變換

cabasicanimation*moveanim=[cabasicanimation

animationwithkeypath

:@"transform"

];//這個引數是蘋果提供的

moveanim.

tovalue

=[nsvalue

valuewithcatransform3d:catransform3dmakeaffinetransform(ptransform)];

moveanim.duration=1;//

執行時間

moveanim.delegate=self;//********************===上面有解析

//*************************page1**********==

[self.passwordtext.layer

addanimation:moveanim forkey:@"animatetransform"];//*****=後面的引數也蘋果提供的//

[self.numbertext.layer

addanimation:moveanim forkey:@"animatetransform"];

[self.loginbut.layer

addanimation:moveanim forkey:@"animatetransform"];

[self.registerbut.layer

addanimation:moveanim forkey:@"animatetransform"];

[self.findpawbut.layer

addanimation:moveanim forkey:@"animatetransform"];

// [self.view.layer addanimation:moveanim forkey:@"animatetransform"];

= ptransform;//移動view,不要擋著輸入

//***************====page2****************************************

cgaffinetransform

ptransform2 =cgaffinetransformmaketranslation(0,

0);//使檢視使用這個變換

cabasicanimation*moveanim2=[cabasicanimation

animationwithkeypath

:@"transform"];

moveanim2.duration=1;

moveanim2.

tovalue

=[nsvalue

valuewithcatransform3d:catransform3dmakeaffinetransform(ptransform2)];

[self.registerbut2.layer

addanimation:moveanim2 forkey:@"animatetransform"];

[self.passwordtext2.layer

addanimation:moveanim2 forkey:@"animatetransform"];

[self.numbertext2.layer

addanimation:moveanim2 forkey:@"animatetransform"];

[uiview

commitanimations];

// [self stop];}

-(void)animationdidstop:(caanimation *)anim finished:(bool)flag

//*************************==更簡單的使用方法********************

[uiview

animatewithduration:

1.0animations:^ completion:^(bool finished) ];

iOS 動畫筆記 一

你也肯定喜歡炫酷的動畫!一 從這裡 quartz2d 開始 在我的學習過程中,我是先從 quartz2d 開始學習的,它裡面的貝塞爾曲線在我們創造精美的動畫的過程中是必不可少的,quartz 2d 它首先就是乙個二維繪圖引擎,同時支援ios和mac系統。下面這裡一篇不錯的文章,仔細的講解了 quar...

iOS動畫筆記之 CAMediaTiming

property cftimeinterval begintime 基本動畫的持續時間 property cftimeinterval duration 基本動畫渲染一次的速度,用於衡量parent time 跟 local time property float speed 時間偏移量 基本上不怎...

js動畫筆記

js動畫有乙個物體變大變小,就是他的style屬性在變化。可以用原生js做到,也可以用jquery做,我們今天說的js原生動畫基礎。這裡動畫效果,我們會用到定時器這個東西。我們先說一下定時器的用法。在js中定時器有這個函式 setinterval function time 週期的呼叫一段 後面的t...