1. 程式人生 > >iOS pushViewController 實現push 和pop 預設動畫效果

iOS pushViewController 實現push 和pop 預設動畫效果

一、push預設動畫效果

   CATransition *transition = [CATransitionanimation];

    transition.duration = 0.3f;

    transition.timingFunction = [CAMediaTimingFunctionfunctionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    transition.type = kCATransitionPush;

    transition.subtype = kCATransitionFromRight;

    transition.delegate

= self;

    [self.contentView.layer addAnimation:transitionforKey:nil];

    [self.contentViewaddSubview:self.productDetailController.view];

  注:self.contentView是工程中的UIView,self.productDetailController是工程中的controller

        只需要把兩者替換成合適的內容即可用

  二、pop預設動畫效果

 CATransition *transition = [CATransition animation];

    transition.duration = 0.3f;

    transition.timingFunction = [CAMediaTimingFunctionfunctionWithName:kCAMediaTimingFunctionEaseInEaseOut];

    transition.type = kCATransitionPush;

    transition.subtype = kCATransitionFromLeft;

    transition.delegate = self;

    [self.view.superview.layeraddAnimation:transition

forKey:nil];

    [self.viewremoveFromSuperview];

 說明:.type設定了主要的頁面切換顯示形式

             .subtype 設定了頁面的旋轉  左右上下

/*
     push動畫:
     cube:立體效果
     pageCurl:漸變
     rippleEffect:水滴
     pageUnCurl:向下翻一頁
     suckEffect 收縮效果,如一塊布被抽走
     oglFlip 上下翻轉效果
     kCATransitionFade淡出
     kCATransitionMoveIn覆蓋原圖
     kCATransitionPush推出
     kCATransitionReveal底部顯出來
     */