ios转场

作者: 修行小怪兽 | 来源:发表于2017-12-01 18:19 被阅读69次

    什么是转场

    • 转场的本质是下一场景(子 VC)的视图替换当前的场景视图(子 VC)以及相应的控制器的切换,表现为当前视图消失和下一视图出现这一过程。

    常用的转场

    • 在 UINavigationController 中 push 和 pop

    • 在 UITabBarController 中切换 Tab

    • Modal 转场:presentation 和 dismissal,俗称视图控制器的模态显示和消失,仅限于modalPresentationStyle属性为 UIModalPresentationFullScreen 或 UIModalPresentationCustom 这两种模式
      UICollectionViewController 的布局转场:UICollectionViewController 与 UINavigationController 结合的转场方式,实现很简单。

    转场代理

    [UINavigationControllerDelegate] //UINavigationController 的 delegate 属性遵守该协议(因识别问题,这里用方括号替换尖括号)
    [UITabBarControllerDelegate] //UITabBarController 的 delegate 属性该协议
    [UIViewControllerTransitioningDelegate] //UIViewController 的 transitioningDelegate 属性遵守该协议
    
    

    转场发生时,UIKit 将要求转场代理将提供转场动画的核心构件:动画控制(遵守<UIViewControllerAnimatedTransitioning>协议)。提供也就是返回给代理对象。

    什么是转场动画(动画控制)

    • 基于上诉转场过程实现的的动画。

    转场动画主要实现思路

    • 设置转场代理,

    • 实现代理方法,代理方法返回转场动画

    • 。转场动画对象遵循转场动画协议,转场动画对象实现代理方法两个,一个是 (NSTimeInterval)transitionDuration:(nullable id <UIViewControllerContextTransitioning>)transitionContext;

    • 另外一个是- (void)animateTransition:(id <UIViewControllerContextTransitioning>)transitionContext;

    参考

    相关文章

      网友评论

          本文标题:ios转场

          本文链接:https://www.haomeiwen.com/subject/qziwbxtx.html