zoukankan      html  css  js  c++  java
  • 动画切换效果之push、pop、present、dismiss

    有时候页面跳转或视图切换的时候,需要做成特定的效果,常见的push、pop、present、dismiss效果如下,注意要添加代理

    push默认动画效果

        CATransition *transition = [CATransition animation];
        transition.duration = 0.3f;
        transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        transition.type = kCATransitionPush;
        transition.subtype = kCATransitionFromRight;
        transition.delegate = self;
        [self.contentView.layer addAnimation:transition forKey:nil];
        [self.contentView addSubview:self.productDetailController.view];
    
    

    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.layer addAnimation:transition forKey:nil];
        [self.view removeFromSuperview];
    

    present默认动画效果

        CATransition *transition = [CATransition animation];
        transition.duration = 0.4f;
        transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        transition.type = kCATransitionMoveIn;
        transition.subtype = kCATransitionFromTop;
        transition.delegate = self;
        [[self currentNavigationController].view.layer addAnimation:transition forKey:nil];
        [[self currentNavigationController] pushViewController:playVC animated:NO];
    
    

    dismiss默认动画效果

        CATransition *transition = [CATransition animation];
        transition.duration = 0.3f;
        transition.timingFunction = [CAMediaTimingFunction functionWithName:kCAMediaTimingFunctionEaseInEaseOut];
        transition.type = kCATransitionReveal;
        transition.subtype = kCATransitionFromBottom;
        transition.delegate = self;
        [self.navigationController.view.layer addAnimation:transition forKey:nil];
        [self.navigationController popViewControllerAnimated:NO];
    
  • 相关阅读:
    网络银行木马DYRE知多少(1)
    搭建LVS+Keepalived负载均衡集群
    Android中@+id和@id的差别
    LeetCode258——Add Digits
    hive 报错/tmp/hive on HDFS should be writable. Current permissions are: rwx--x--x
    java 调用 库文件错误查找方法
    如何使用安信可 ESP 系列一体化开发环境【转】
    如何安装安信可一体化开发环境【转】
    ESP8266串口模块的基本使用【转】
    WIFI模块ESP8266的使用指南【转】
  • 原文地址:https://www.cnblogs.com/dongliu/p/6824012.html
Copyright © 2011-2022 走看看