【第21期】观点:人工智能到底用 GPU?还是用 FPGA?

iOS 自定义翻转动画 (Custom Transitioning)

原创 2017年01月03日 18:55:27

demo 链接

自定义翻转动画包括两部分:
1.UIViewControllerAnimatedTransitioning,动画协议
2.UIViewControllerInteractiveTransitioning,交互协议
动画协议,实现controller 之间 跳转的呈现形式,一般跳转和返回回是两个不同的动画,所以一般两个动画会同时存在。

- (NSTimeInterval)transitionDuration:(nullable id <UIViewControllerContextTransitioning>)transitionContext; // 动画需要执行的时间
- (void)animateTransition:(id <UIViewControllerContextTransitioning>)transitionContext; // 自定义的动画需要写在这里,使用completeTransition来结束跳转

交互协议,controller之间翻转动画的整个过程可以通过这个协议来自定义。

// 这三个函数决定了执行过程状态,
- (void)updateInteractiveTransition:(CGFloat)percentComplete; // 开始翻转
- (void)cancelInteractiveTransition; // 取消翻转
- (void)finishInteractiveTransition; // 翻转成功
通过UIViewControllerContextTransitioning上下文协议,使用viewControllerForKey来获取FormVC,ToVC,FromView,ToView。来对这些内容进行操作。
可以使用snapshotViewAfterScreenUpdates,来获取一个需要改变的view。


使用:
1.模态跳转,
vc.modalPresentationStyle = UIModalPresentationCustom; // 设置成自定义
vc.transitioningDelegate = self; //签代理
然后实现对应的代理方法既可以,包括跳转,返回,跳转的交互,返回的交互。

2.push
原理和模态是一样的,只不过跳转在当前controller里面实现,
返回在目标controller里面实现。

具体代码可以看:

demo链接
push并没有实现,push首先签UINavigationControllerDelegate,然后在对应页面实现对应的代理方法即可,翻转动画和翻转过程可以和模态跳转是相同的。

版权声明:本文为博主原创文章,未经博主允许不得转载。 举报

相关文章推荐

欢迎关注CSDN程序人生公众号

关注程序员生活,汇聚开发轶事。

iOS学习之自定义弹出UIPickerView或UIDatePicker(动画效果)

前面iOS学习之UIPickerView控件的简单使用 用到的UIPickerView弹出来是通过 textField.inputView = selectPicker; textField.inputAccessoryView = doneToolbar;

IOS 自定义界面切换动画-Custom Segue

实现方式就是继承UIStoryboardSegue类,然后重写Perform方法,然后在Storyboard上将类设置为自定义的类

[iOS]实现了一套自定义动画库

实现了一套自定义动画库 罗朝辉(http://blog.csdn.net/kesalin) 转载请注明出处 <

自定义 push 和 pop 实现有趣的相册翻开效果(上)

原文链接:   http://www.cocoachina.com/ios/20151029/13896.html 效果预览: 苹果自家应用 Photos 里点击相册后的动画是非常精妙的...

ios中自定义alert view,并实现动画组合

工作需要,要做一个类似于alert的view,在上面可以自己随便画东西,在网上找了一个开源的例子,读了源码之后,感觉对ios的view和动画有了更深的了解,现在与大家分享。 下面是其中自定义alertview和动画页面的主要代码,有我的注释, // // CustomizedAlertViewDemoAppDelegate.m // CustomizedAlertViewDemo // // Created by CocoaBob on 11-3-22. // Copyrigh
  • mmdev
  • mmdev
  • 2012-08-08 23:26
  • 331

自定义 push 和 pop 实现有趣的相册翻开效果(上)

效果预览: 苹果自家应用 Photos 里点击相册后的动画是非常精妙的,而且是可交互的。我有类似的动画需求,上面是我自己的设计效果。本指南分上下两篇,分别探讨非交互和...

用户自定义开发目录-CUSTOM_CORE_DIR二次开发目录简介

二次开发目录(以下简称CUSTOM_CORE_DIR)提供一个独立的二次开发环境目录,需要开发者在config.php中自定义一个文件目录,用于接管系统原有的流程,从而达到在不影响系统本身代码的情况下进行二次开发的目的。   CUSTOM_CORE_DIR使用方法与规则 MVC文件 LIB dbschema XML文件(site.xml

iOS 关于MBProgressHUD的使用 自定义动画

MBProgressHUD的常用属性和用法: /* 要将一个MBProgressHUD显示出来,1,创建对象;2,将HUD添加到view上;3,调用show方法 ...

【iOS-Cocos2d游戏开发之二十一 】自定义精灵类并为你的精灵设置攻击帧(指定开始帧)以及扩展Cocos2d源码的CCAnimation简化动画创建!

<a href="http://www.himigame.com/about-himi" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; padding-top: 0px; padding-right: 0px; padding-bottom: 0px; padding-left: 0px; bor
  • mmdev
  • mmdev
  • 2011-11-20 23:01
  • 452

自定义 push 和 pop 实现有趣的相册翻开效果

苹果自家应用 Photos 里点击相册后的动画是非常精妙的,而且是可交互的。我有类似的动画需求,上面是我自己的设计效果。本指南分上下两篇,分别探讨非交互和交互动画的实现,从入门到深入,并搜集了实现过程...
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)