自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

詳解iPhone開發(fā)中各種動(dòng)畫實(shí)現(xiàn)效果

移動(dòng)開發(fā) iOS
本文介紹的是iPhone開發(fā)中各種動(dòng)畫實(shí)現(xiàn)效果。iphone中存在很多好看的動(dòng)畫效果,用于頁面的切換等。其中某些是apple私有的,據(jù)說私有的無法通過apple的審批,來看內(nèi)容。

iPhone開發(fā)中各種動(dòng)畫實(shí)現(xiàn)效果是本文要介紹的內(nèi)容,iphone中存在很多好看的動(dòng)畫效果,用于頁面的切換等。其中某些是apple私有的,據(jù)說私有的無法通過apple的審批。最近工作中剛好用到過其中的某些動(dòng)畫,所以在網(wǎng)上搜了下資料,了解了下這些動(dòng)畫。這里就自己的理解做一下總結(jié),如有錯(cuò)誤或遺漏,盡請諒解。

1、UIView 動(dòng)畫

官方API中,使用UIView可以設(shè)置5個(gè)動(dòng)畫效果,分別為:

  1. UIViewAnimationTransitionNone    不使用動(dòng)畫  
  2.  
  3. UIViewAnimationTransitionFlipFromLeft    從左向右旋轉(zhuǎn)翻頁  
  4.  
  5. UIViewAnimationTransitionFlipFromRight    從右向左旋轉(zhuǎn)翻頁,與UIViewAnimationTransitionFlipFromLeft相反  
  6.  
  7. UIViewAnimationTransitionCurlUp    卷曲翻頁,從下往上  
  8.  
  9. UIViewAnimationTransitionCurlDown    卷曲翻頁,從上往下  
  10.  
  11. 詳細(xì)請參見UIViewAnimationTransition 

例子:

  1. [UIView beginAnimations:@"animationID" context:nil];//開始一個(gè)動(dòng)畫塊,***個(gè)參數(shù)為動(dòng)畫塊標(biāo)識
  2.  
  3. [UIView setAnimationDuration:0.5f];//設(shè)置動(dòng)畫的持續(xù)時(shí)間  
  4.  
  5. [UIView setAnimationCurve:UIViewAnimationCurveEaseInOut];  
  6.        //設(shè)置動(dòng)畫塊中的動(dòng)畫屬性變化的曲線,此方法必須在beginAnimations方法和commitAnimations,默認(rèn)即為UIViewAnimationCurveEaseInOut效果。
  7. 詳細(xì)請參見UIViewAnimationCurve  
  8.  
  9. [UIView setAnimationRepeatAutoreverses:NO];//設(shè)置是否自動(dòng)反轉(zhuǎn)當(dāng)前的動(dòng)畫效果  
  10.  
  11. [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.view cache:YES];
  12. //設(shè)置過渡的動(dòng)畫效果,此處***個(gè)參數(shù)可使用上面5種動(dòng)畫效果  
  13.  
  14. [self.view exchangeSubviewAtIndex:1 withSubviewAtIndex:0];//頁面翻轉(zhuǎn)  
  15.  
  16. [UIView commitAnimations];//提交動(dòng)畫 

2、公共動(dòng)畫效果

使用CATransiton可以設(shè)置4種動(dòng)畫效果,分別為:

  1. NSString * const kCATransitionFade;//漸漸消失  
  2.  
  3. NSString * const kCATransitionMoveIn;//覆蓋進(jìn)入  
  4.  
  5. NSString * const kCATransitionPush;//推出  
  6.  
  7. NSString * const kCATransitionReveal;//與MoveIn相反 

例子:

  1. CATransition *animation = [CATransition animation];  
  2.  
  3. animation.duration = 0.5f;  
  4.  
  5. animation.timingFunction = UIViewAnimationCurveEaseInOut;  
  6.  
  7. animation.type = kCATransitionPush;//設(shè)置上面4種動(dòng)畫效果  
  8.  
  9. animation.subtype = kCATransitionFromTop;//設(shè)置動(dòng)畫的方向,有四種,
  10.  
  11. 分別為kCATransitionFromRight、kCATransitionFromLeft、kCATransitionFromTop、kCATransitionFromBottom  
  12.  
  13. [self.view.layer addAnimation:animation forKey:@"animationID"]; 

3、私有動(dòng)畫

iphone種還有很多動(dòng)畫是蘋果私有的,例如刪除照片的動(dòng)畫等,

私有動(dòng)畫可以直接在animation.type中傳入動(dòng)畫的字符串即可。動(dòng)畫有以下幾種:

  1. cube:像立方體一樣翻轉(zhuǎn)  
  2.  
  3. suckEffect:漸漸縮小,與刪除照片動(dòng)畫一樣  
  4.  
  5. oglFlip:上下旋轉(zhuǎn),當(dāng)subType為fromLeft或者fromRight時(shí),
  6. 與UIViewAnimationTransitionFlipFromLeft和UIViewAnimationTransitionFlipFromRight一樣  
  7.  
  8. rippleEffect:水波效果  
  9.  
  10. pageCurl:與UIViewAnimationTransitionCurlUp一樣  
  11.  
  12. pageUnCurl:與UIViewAnimationTransitionCurlDown一樣  
  13.  
  14. cameraIrisHollowOpen:First half of cameraIris.  
  15.  
  16. cameraIrisHollowClose:Second half of cameraIris 

以上所有動(dòng)畫效果的demo請見http://www.cocoachina.com/bbs/read.php?tid-11820.html,在此感謝樓主的分享,給我的學(xué)習(xí)帶來很到的幫助。

UIViewAnimationState描述:http://www.iphonedevwiki.net/index.php/UIViewAnimationState

同時(shí),本人在使用UIView實(shí)現(xiàn)suckEffect縮小的效果過程中遇到一個(gè)問題(不知道如何定位),經(jīng)過搜索終覓得解決方法,分享如下:

  1. [UIView beginAnimations:@"suck" context:NULL];  
  2. [UIView setAnimationTransition:103 forView:self.view cache:YES];  
  3. [UIView setAnimationDuration:0.5f];  
  4. if (self.interfaceOrientation  == UIInterfaceOrientationPortrait || self.interfaceOrientation == UIInterfaceOrientationPortraitUpsideDown) 
  5. {  
  6.  [UIView setAnimationPosition:CGPointMake(44, 42)];  
  7. }else {  
  8. [UIView setAnimationPosition:CGPointMake(320 , 42)];  
  9. }  
  10. [UIView commitAnimations]; 

其中setAnimationPosition方法就是用于設(shè)置縮小點(diǎn)的位置的,此處雖然會報(bào)一個(gè)警告,但是結(jié)果還是正確的。

小結(jié):詳解iPhone開發(fā)中各種動(dòng)畫實(shí)現(xiàn)效果的內(nèi)容介紹完了,希望通過本文的學(xué)習(xí)能對你有所幫助!

責(zé)任編輯:zhaolei 來源: 新浪博客
相關(guān)推薦

2011-07-08 10:15:15

IPhone 動(dòng)畫

2011-08-10 14:40:23

iPhone動(dòng)畫

2011-07-29 13:55:10

IPhone 動(dòng)畫

2011-08-16 18:13:42

IPhone開發(fā)UIView動(dòng)畫

2011-08-03 16:35:10

iPhone UIView 動(dòng)畫

2011-08-03 16:26:14

iPhone UIView 動(dòng)畫

2011-08-22 14:21:24

iPhone開發(fā)UIView Anim

2011-07-08 15:08:16

iPhone 圖片

2011-08-15 13:50:06

IPhone開發(fā)UIView動(dòng)畫

2011-08-10 17:37:00

iPhoneASIHTTPRequ

2011-07-22 18:20:04

IOS View 動(dòng)畫

2011-07-28 10:11:54

iPhone開發(fā) 備忘

2011-08-12 14:33:06

iPhone緩存文件

2011-08-15 11:37:20

iPhone開發(fā)Mask

2018-10-10 09:00:00

前端框架Angular

2011-08-12 11:31:46

iPhoneUIView動(dòng)畫

2011-07-29 14:18:46

iPhone開發(fā) 動(dòng)畫

2012-06-04 14:47:42

HTML5

2011-07-26 14:18:20

2011-08-15 15:44:46

iPhone開發(fā)PDF
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號