您好,登錄后才能下訂單哦!
標(biāo)簽:
caanimationcatransitionios動(dòng)畫(huà) |
|
現(xiàn)在明白了,要做動(dòng)畫(huà)。需要用到CATransition類!
那就學(xué)習(xí)一下吧!
先貼一個(gè)入門(mén)代碼!
[_imgPic setImage:p_w_picpath];// 設(shè)置新的圖片
CATransition *animation = [CATransition animation];
[animationsetDuration:1.0];
[animationsetFillMode:kCAFillModeForwards];
[animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]];
[animationsetType:@"rippleEffect"];// rippleEffect
[animationsetSubtype:kCATransitionFromTop];
[_imgPic.layer addAnimation:animation forKey:nil];
實(shí)現(xiàn)功能就是,在UIImageView換新圖片的時(shí)候,做相應(yīng)的動(dòng)畫(huà)效果!好讓,UIImageView轉(zhuǎn)化時(shí),不至于太單調(diào)!
第一句,就讓我很困惑!
CATransition *animation = [CATransition animation];
+ (id)animation方法
創(chuàng)建一個(gè)CATransition對(duì)象。但是CATransition并沒(méi)有animation方法?!
@interface CATransition :CAAnimation
原來(lái)如此,CATransition是CAAnimation的子類
騎驢看唱本吧!
CAAnimation類
CAAnimation類,是一個(gè)抽象類。遵循CAMediaTiming協(xié)議和CAAction協(xié)議!
CAAnimation
is an abstract animation class.
It provides the basic support for the CAMediaTiming
and CAAction
protocols.
CAMediaTiming協(xié)議
可以調(diào)整時(shí)間,包括持續(xù)時(shí)間,速度,重復(fù)次數(shù)。
CAAction協(xié)議
可以通過(guò)響應(yīng)動(dòng)作的方式來(lái)顯示動(dòng)畫(huà)。
CAAnimation有很多派生類
CATransition提供漸變效果:(推拉push效果,消退fade效果,揭開(kāi)reveal效果)。
CAAnimationGroup允許多個(gè)動(dòng)畫(huà)同時(shí)播放。
CABasicAnimation提供了對(duì)單一動(dòng)畫(huà)的實(shí)現(xiàn)。
CAKeyframeAnimation關(guān)鍵楨動(dòng)畫(huà),可以定義行動(dòng)路線。
CAConstraint約束類,在布局管理器類中用它來(lái)設(shè)置屬性。
CAConstraintLayoutManager約束布局管理器,是用來(lái)將多個(gè)CALayer進(jìn)行布局的.各個(gè)CALayer是通過(guò)名稱來(lái)區(qū)分,而布局屬性是通過(guò)CAConstraint來(lái)設(shè)置的。
CATransaction事務(wù)類,可以對(duì)多個(gè)layer的屬性同時(shí)進(jìn)行修改.它分隱式事務(wù),和顯式事務(wù)。
CAAnimation屬性
delegate
@property(retain) id delegate
為CAAnimation設(shè)置代理。默認(rèn)為nil。
注意:一個(gè)CAAnimation實(shí)例,不能設(shè)置delegate為self。會(huì)引起循環(huán)引用。
removedOnCompletion
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。