zoukankan      html  css  js  c++  java
  • iOS 7 present/dismiss转场动画

    前言

    iOS 7以后提供了自定义转场动画的功能,我们可以通过遵守协议完成自定义转场动画。本篇文章讲解如何实现自定义presentdismiss自定义动画。

    效果图

    本篇文章实现的动画切换效果图如下:

    image

    视图切换种类

    如下效果图,这是有两大类视图切换动画的,一种是交互式的,另一种就是自定义的。

    image

    本篇只讲其中的UIViewControllerAnimatedTransitioning协议,来实现presentdismiss动画效果。另外的几个,后面会继续学习总结!!!

    协议

    我们要实现presentdismiss自定义转场效果,我们必须要有一个遵守了UIViewControllerAnimatedTransitioning协议且实现其必须实现的代理方法的类。

    我们先来学习UIViewControllerAnimatedTransitioning协议:

    我们要实现目标效果,就需要一个定义一个类遵守UIViewControllerAnimatedTransitioning协议并实现相应的代理方法。

    遵守UIViewControllerAnimatedTransitioning协议

    下面,我们来定义一个转场类,这个类必须要遵守UIViewControllerAnimatedTransitioning协议,如下:

    头文件

    我们只公开了一个方法来创建,指定动画类型,动画时长,呈现的高度,缩放系数。

    实现文件

    我们这里就不细讲了,因为在iOS 7 push/pop转场动画中已经讲过了。大家若未看过,可以先阅读。

    测试效果

    我们要设置一下被present的控制器的代理,在-viewDidLoad:时添加如下代码:

    同时,还需要遵守协议并实现协议UIViewControllerTransitioningDelegate,这个是控制器转场动画实现的代理:

    我们设置presentdismiss自定义对象,就可以实现我们的动画了。

    想要实现什么样的动画,都可以在HYBModalTransition类里面实现,没有实现不了,只有想不到!!!

  • 相关阅读:
    扩展正则表达式 练习题
    Linux特殊符号
    文件属性下
    文件属性和ls -lhi
    复习之前的和补充一些内容
    第二关练习题总结完结
    云服务器防ssh攻击
    实验四+085
    实验3+085
    第5次作业+085
  • 原文地址:https://www.cnblogs.com/jiayongqiang/p/5339669.html
Copyright © 2011-2022 走看看