类型字符串 效果说明 关键字 方向
fade 交叉淡化过渡 YES
push 新视图把旧视图推出去 YES
moveIn 新视图移到旧视图上面 YES
reveal 将旧视图移开,显示下面的新视图 YES
cube 立方体翻滚效果
oglFlip 上下左右翻转效果
suckEffect 收缩效果,如一块布被抽走 NO
rippleEffect 水滴效果 NO
pageCurl 向上翻页效果
pageUnCurl 向下翻页效果
cameraIrisHollowOpen 相机镜头打开效果 NO
cameraIrisHollowClose 相机镜头关闭效果 NO
CATransition是CAAnimation的子类,用于做转场动画,能够为层提供移出屏幕和移入屏幕的动画效果。iOS比Mac OS X的转场动画效果少一点
UINavigationController就是通过CATransition实现了将控制器的视图推入屏幕的动画效果
动画属性:
-type:动画过渡类型
-subtype:动画过渡方向
-startProgress:动画起点(在整体动画的百分比)
-endProgress:动画终点(在整体动画的百分比)
- (void) swipAction:(UISwipeGestureRecognizer *)recognizer { CATransition *anim = [[CATransition alloc]init]; //动画过渡类型 [anim setType:@"fade"]; UIImageView *imageView = (UIImageView *)recognizer.view; if(UISwipeGestureRecognizerDirectionLeft == recognizer.direction){ //动画过渡方向 [anim setSubtype:kCATransitionFromRight]; imageView.tag = (imageView.tag + 1)%self.imageList.count; }else if(UISwipeGestureRecognizerDirectionRight == recognizer.direction){ [anim setSubtype:kCATransitionFromLeft]; imageView.tag = (imageView.tag - 1 + self.imageList.count) % self.imageList.count; } [anim setDuration:0.5f]; [imageView setImage:self.imageList[imageView.tag]]; [recognizer.view.layer addAnimation:anim forKey:nil]; }