亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 學院 > 開發設計 > 正文

效果動畫

2019-11-09 15:35:24
字體:
來源:轉載
供稿:網友

//翻頁效果動畫左邊

    [UIView beginAnimations:@"animation" context:nil];

    [UIView setAnimationDuration:1.0f];

    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:YES];

    [UIView commitAnimations];

    //翻頁效果動畫右邊

    [UIView beginAnimations:nil context:NULL];

    [UIView setAnimationCurve:UIViewAnimationCurveEaSEOut];

    [UIView setAnimationDuration:0.35f];

    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromLeft forView:self.navigationController.view cache:NO];

    [UIView commitAnimations];

    //layer動畫,從上到下模糊

    CATransition *animation = [CATransition animation];

    [animation setDuration:2.0f];

    [animation setFillMode:kCAFillModeForwards];

    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]];

    [animation setType:kCATransitionPush];

    [animation setSubtype:kCATransitionFromBottom];

    [self.navigationController.navigationBar.layer addAnimation:animation forKey:nil];

    //折頁效果動畫

    [UIView animateWithDuration:0.35f animations:^

         /**

          *  @see       http://donbe.blog.163.com/blog/static/138048021201061054243442/

          *  @param     transform   形變屬性(結構體),可以利用這個屬性去對view做一些翻轉或者縮放.詳解請猛戳↑URL.

          *  @method    valueWithCATransform3D: 此方法需要一個CATransform3D的結構體.一些非詳細的講解可以看下面的URL

          *  @see       http://blog.csdn.net/liubo0_0/article/details/7452166

         self.navigationController.view.transform = CGAffineTransformMakeScale(0.001, 0.001);

         CABasicAnimation *animation = [CABasicAnimation animationWithKeyPath:@"transform"];

         // 向右旋轉45°縮小到最小,然后再從小到大推出.

         animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.70, 0.40, 0.80)];

         /**

          *     其他效果:

          *     從底部向上收縮一半后彈出

          *     animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.0, 1.0, 0.0)];

          *     從底部向上完全收縮后彈出

          *     animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 1.0, 0.0, 0.0)];

          *     左旋轉45°縮小到最小,然后再從小到大推出.

          *     animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.50, -0.50, 0.50)];

          *     旋轉180°縮小到最小,然后再從小到大推出.

          *     animation.toValue = [NSValue valueWithCATransform3D:CATransform3DMakeRotation(M_PI, 0.1, 0.2, 0.2)];

         animation.duration = 2;

         animation.repeatCount = 1;

         [self.navigationController.view.layer addAnimation:animation forKey:nil];

                     completion:^(BOOL finished)

         [UIView animateWithDuration:0.35f animations:^

              self.navigationController.view.transform = CGAffineTransformMakeScale(1.0, 1.0);

          }];

     }];

    //從下到上模糊推出

    CATransition *animation = [CATransition animation];

    [animation setDuration:1.0f];

    [animation setType:kCATransitionReveal];

    [animation setSubtype:kCATransitionFromTop];

    [animation setFillMode:kCAFillModeForwards];

    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseOut]];

    [self.navigationController.navigationBar.layer addAnimation:animation forKey:nil];

    //旋轉動畫

    CABasicAnimation *rotationAnimation = [CABasicAnimation animationWithKeyPath:@"transform.rotation.z"];

    rotationAnimation.toValue = [NSNumber numberWithFloat:(2 * M_PI) * 2];

    rotationAnimation.duration = 0.35f;

    rotationAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    CABasicAnimation *scaleAnimation = [CABasicAnimation animationWithKeyPath:@"transform.scale"];

    scaleAnimation.toValue = [NSNumber numberWithFloat:0.0];

    scaleAnimation.duration = 0.35f;

    scaleAnimation.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    CAAnimationGroup *animationGroup = [CAAnimationGroup animation];

    animationGroup.duration = 2.35f;

    animationGroup.autoreverses = YES;

    animationGroup.repeatCount = 1;

    animationGroup.animations =[NSArray arrayWithObjects:rotationAnimation, nil];

    [self.navigationController.view.layer addAnimation:animationGroup forKey:@"animationGroup"];

    [UIView commitAnimations];

    CATransition *animation = [CATransition animation];

    [animation setDuration:0.8];

     /* 各種動畫效果*/

    /* type類型 */  /*這里要注意不用私有方法*/

     pageCurl   向上翻一頁

     pageUnCurl 向下翻一頁

     rippleEffect 滴水效果

     suckEffect 收縮效果,如一塊布被抽走

     cube 立方體效果

     oglFlip 上下翻轉效果

    [animation setType: kCATransitionReveal];

    /* 動畫方向*/

    /* SubType類型 */

     kCATransitionFade淡出

     kCATransitionMoveIn覆蓋原圖

     kCATransitionPush推出

     kCATransitionReveal底部顯出來

也可以有四種類型:

     kCATransitionFromRight;

     kCATransitionFromLeft

     kCATransitionFromTop;

     kCATransitionFromBottom

    [animation setSubtype: kCATransitionFromBottom];

     /* 動畫的開始與結束的快慢*/

    [animation setTimingFunction:[CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut]];

    [self.navigationController.self.view.layer addAnimation:animation forKey:nil];

    //這里應用場景是已經有2個viewController插入要的self.view上

     [self.view insertSubview:self.blueController.view atIndex:0];

     [self.view insertSubview:self.yellowController.view atIndex:1];

    [self.view exchangeSubviewAtIndex:0 withSubviewAtIndex:1];

    //UIView開始動畫,第一個參數是動畫的標識,第二個參數附加的應用程序信息用來傳遞給動畫代理消息

    [UIView beginAnimations:@"animation" context:nil];

    //動畫持續時間

    [UIView setAnimationDuration:1.25];

    //設置動畫的回調函數,設置后可以使用回調方法

    [UIView setAnimationDelegate:self];

    //設置動畫曲線,控制動畫速度

    [UIView  setAnimationCurve: UIViewAnimationCurveEaseInOut];

    //設置動畫方式,并指出動畫發生對象

    [UIView setAnimationTransition:UIViewAnimationTransitionCurlUp forView:self.navigationController.view  cache:YES];//cache

    /*cache

如果是YES,那么在開始和結束圖片視圖渲染一次并在動畫中創建幀;否則,視圖將會在每一幀都渲染。例如緩存,你不需要在視圖轉變中不停的更新,你只需要等到轉換完成再去更新視圖。

    //設置動畫重復

    [UIView setAnimationRepeatCount:5.0];

    //提交UIView動畫 結束動畫

    [UIView commitAnimations];

    //開始一個動畫塊

    [UIView   beginAnimations:@"animationID" context:nil];

    //設置動畫塊中的動畫持續時間(用秒)

    [UIView   setAnimationDuration:1.5f];

    //設置動畫塊中的動畫屬性變化的曲線

    [UIView   setAnimationCurve:UIViewAnimationCurveLinear];

    /*變化曲線還有

    (    UIViewAnimationCurveEaseInOut,         // slow at beginning and end

    UIViewAnimationCurveEaseIn,            // slow at beginning

    UIViewAnimationCurveEaseOut,           // slow at end

    UIViewAnimationCurveLinear)

    //設置動畫塊中的動畫效果是否自動重復播放。

    [UIView setAnimationRepeatAutoreverses:NO];

    //設置動畫在動畫模塊中的重復次數

    //setAnimationRepeatCount:

    //設置動畫消息的代理。

    [UIView setAnimationDelegate:self];

    /*  UIView動畫的代理方法

//    [UIView

//     //設置消息給動畫代理當動畫開始的時候

//     setAnimationWillStartSelector:@selector(resizeAnimationWillStart:context:)];

//    [UIView

//     //設置消息給動畫代理當動畫停止的時候

//     setAnimationDidStopSelector:@selector(resizeAnimationDidStop:finished:context:)];

    //將效果作用在指定的view

    [UIView setAnimationTransition:UIViewAnimationTransitionFlipFromRight forView:self.navigationController.view cache:YES];

    效果還有(UIViewAnimationTransitionFlipFromLeft,UIViewAnimationTransitionFlipFromRight,UIViewAnimationTransitionCurlUp,UIViewAnimationTransitionCurlDown)

    //顯示在最前面

    [self.view exchangeSubviewAtIndex:1 withSubviewAtIndex:0];

    //結束動畫

    [UIView commitAnimations];


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国产中文日韩欧美| 性日韩欧美在线视频| 久久夜色精品亚洲噜噜国产mv| 97视频免费在线看| 国产精品91免费在线| 26uuu亚洲国产精品| 欧美电影《睫毛膏》| 国产丝袜精品视频| 日韩在线免费视频观看| 欧美性高潮在线| 欧美亚洲在线观看| 亚洲第一精品久久忘忧草社区| 久久久久久com| 国产激情综合五月久久| 青青草国产精品一区二区| 久久精品99久久香蕉国产色戒| 国产亚洲欧美日韩一区二区| 亚洲成人精品视频| 国产精品视频精品视频| 91在线国产电影| 国产精品一区二区久久国产| 欧美精品日韩三级| 亚洲国产成人在线视频| 欧美最近摘花xxxx摘花| 欧美日韩亚洲精品一区二区三区| 欧美国产亚洲精品久久久8v| 国产精品久久久久久亚洲影视| 97精品伊人久久久大香线蕉| 免费成人高清视频| 日韩av一卡二卡| 国产偷亚洲偷欧美偷精品| 日韩精品视频免费专区在线播放| 国产一级揄自揄精品视频| 亚洲黄色www| 日韩欧美一区二区三区久久| 亚洲自拍小视频免费观看| 亚洲二区在线播放视频| 国产精品久久久久久久久久免费| 国产精品久久久久av免费| 最近2019中文字幕一页二页| 国产一区二区激情| 亚洲精品一区在线观看香蕉| 日韩一区av在线| 日本韩国在线不卡| 日韩国产激情在线| 亚洲欧美激情精品一区二区| 国产一区二区三区精品久久久| 欧美性生活大片免费观看网址| 国产噜噜噜噜久久久久久久久| 97成人超碰免| 91欧美精品午夜性色福利在线| 欧美日韩国产区| 国产成人综合精品| 欧美影院在线播放| 日本成人在线视频网址| 久久久亚洲精选| 久久免费少妇高潮久久精品99| 亚洲国产又黄又爽女人高潮的| 在线视频日韩精品| 91老司机精品视频| 国产精品流白浆视频| 热门国产精品亚洲第一区在线| 亚洲国产精彩中文乱码av在线播放| 九九热在线精品视频| 日韩欧美成人区| 精品久久久视频| 成人免费视频在线观看超级碰| 成人444kkkk在线观看| 午夜精品一区二区三区av| 亚洲精品久久久久中文字幕欢迎你| 亚洲人成亚洲人成在线观看| 亚洲第一精品夜夜躁人人躁| 久久久人成影片一区二区三区| 九九热在线精品视频| 欧美日韩裸体免费视频| 福利微拍一区二区| 欧美高跟鞋交xxxxxhd| 成人av在线亚洲| 中文综合在线观看| 亚洲精选在线观看| 精品视频中文字幕| 日韩女优在线播放| 久久99国产精品久久久久久久久| 亚洲永久免费观看| 亚洲国产精品电影在线观看| 中文字幕在线观看日韩| 精品久久久久久久久久久久| 欧美片一区二区三区| 精品丝袜一区二区三区| 97国产suv精品一区二区62| 精品国内产的精品视频在线观看| 欧美精品精品精品精品免费| 亚洲国产小视频| 日产精品久久久一区二区福利| 国产成人一区三区| 久久中文字幕视频| 国产精品日韩久久久久| 91久久国产综合久久91精品网站| 久久久久亚洲精品| 欧美激情在线观看视频| 91国产精品91| 国产美女精品视频| 国产乱人伦真实精品视频| 国产在线精品播放| 成人久久精品视频| 91高潮在线观看| 日韩美女毛茸茸| 91久久国产婷婷一区二区| 欧美综合一区第一页| 黄色一区二区在线| 亚洲国产精品视频在线观看| 欧洲美女7788成人免费视频| 欧洲美女免费图片一区| 国产欧美婷婷中文| 97视频国产在线| 精品亚洲一区二区三区| 日韩欧美精品中文字幕| 亚洲国产日韩欧美在线动漫| 国产一区私人高清影院| 最近更新的2019中文字幕| 日韩成人在线视频网站| 国产一区二区日韩| 日韩欧美在线视频免费观看| 91在线视频导航| 日韩精品欧美激情| 国产精品久久久久久久久借妻| 欧美激情网友自拍| 亚洲国产精品999| 久久久精品一区二区| 欧美成人网在线| 国产区精品视频| 国产成人精品在线视频| 欧美成人黑人xx视频免费观看| 亚洲国产精品va在线看黑人动漫| 欧美精品九九久久| 国产精品高清在线| 成人黄色在线观看| 欧美—级高清免费播放| 91热福利电影| 91av在线免费观看视频| 成人精品福利视频| 日韩中文字幕网址| 亚洲九九九在线观看| 久久综合免费视频影院| 国产日韩欧美电影在线观看| 亚洲最大激情中文字幕| 中文字幕国产日韩| 国产精品欧美激情在线播放| 亚洲色图17p| 亚洲欧洲一区二区三区在线观看| 亚洲精品www久久久| 另类少妇人与禽zozz0性伦| 成人综合国产精品| 亚洲欧美另类国产| 亚洲人成在线观| 91夜夜未满十八勿入爽爽影院| 97久久久免费福利网址| 91久久久久久国产精品| 国产一区二区三区视频在线观看| 中文一区二区视频| 国产精品揄拍500视频| 精品国产福利视频| 韩国国内大量揄拍精品视频| 亚洲精品免费一区二区三区|