iOS 跳轉動畫 改變pushViewController動畫


 

 

先看下效果:

 

 

 BPController *VC = [[BPmController alloc] init];
    [UIView transitionWithView:self.navigationController.view duration:0.3 options:UIViewAnimationOptionCurveEaseOut animations:^{
        CATransition* transition = [CATransition animation];
        transition.duration =0.0f;
        transition.type = kCATransitionPush;
        transition.subtype = kCATransitionFromBottom;//可以修改從哪個方向過來
        transition.timingFunction = [CAMediaTimingFunction functionWithName: kCAMediaTimingFunctionEaseIn];//動畫效果
        [self.navigationController.view.layer addAnimation:transition forKey:kCATransition];//添加動畫

        VC.reqListDataArr = self.miniProgramDataArr;
        [self.navigationController pushViewController:VC animated:NO];//這里的animated要設置為NO
    } completion:nil];

 

 

返回同理

[UIView transitionWithView:weakself.navigationController.view duration:0.4 options:UIViewAnimationOptionCurveEaseIn animations:^{
            CATransition* transition = [CATransition animation];
            transition.duration =0.4f;
            transition.type = kCATransitionReveal;
            transition.subtype = kCATransitionFromTop;
            transition.timingFunction = [CAMediaTimingFunction functionWithName: kCAMediaTimingFunctionEaseIn];
            [weakself.navigationController.view.layer addAnimation:transition forKey:kCATransition];
            
            [weakself.navigationController popViewControllerAnimated:false];
        } completion:nil];

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM