# PushAnimation **Repository Path**: baishiyun/PushAnimation ## Basic Information - **Project Name**: PushAnimation - **Description**: push自定义转场动画 - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 3 - **Forks**: 0 - **Created**: 2015-05-26 - **Last Updated**: 2020-12-19 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README 在需要使用的控制器中添加#import "BSYAnimator.h"和#import "BSYTransitionAnimator.h"两个头文件: @property(nonatomic,strong)BSYAnimator *Animator; @property(nonatomic,strong)BSYTransitionAnimator *TransitionAnimator; ///遵循代理 @interface ViewController () ///需要跳转的控制器 @property(nonatomic,strong)TwoViewController*two; 在- (void)viewDidLoad 中初始化 self.Animator = [[BSYAnimator alloc]init]; self.TransitionAnimator = [[BSYTransitionAnimator alloc]init]; TwoViewController *two = [[TwoViewController alloc]init]; self.navigationController.delegate = self; two.transitioningDelegate = self; two.modalPresentationStyle = UIModalPresentationCustom; //然后在跳转的方法中 [self.navigationController pushViewController:self.two animated:YES]; 实现代理方法 #pragma mark - UINavigationControllerDelegate iOS7新增的2个方法 // 动画特效 - (id) navigationController:(UINavigationController *)navigationController animationControllerForOperation:(UINavigationControllerOperation)operation fromViewController:(UIViewController *)fromVC toViewController:(UIViewController *)toVC { if (operation == UINavigationControllerOperationPush) { return self.Animator; }else{ return nil; } } #pragma mark - Transitioning Delegate (Modal) -(id)animationControllerForPresentedController:(UIViewController *)presented presentingController:(UIViewController *)presenting sourceController:(UIViewController *)source { self.TransitionAnimator.animationType = AnimationTypePresent; return self.TransitionAnimator; } -(id)animationControllerForDismissedController:(UIViewController *)dismissed { self.TransitionAnimator.animationType = AnimationTypeDismiss; return self.TransitionAnimator; }