Изменение контроллера корневого представления с помощью HERO transition

#ios #swift #xcode #swift5

#iOS #swift #xcode #swift5

Вопрос:

У меня есть этот код….

  UIView.transition(with: window!, duration: 0.3, options: **animation**, animations: {
            window!.rootViewController = rootVC
        }, completion: nil
  

Возможно ли заменить Hero transition на «animation» var?

Комментарии:

1. Я бы заглянул в документы: https://github.com/HeroTransitions/Hero/wiki/Usage-Guide

2. я еще не прочитал документацию, но мой вопрос вот-вот … если возможно, что hero transition работает с «window.RootViewController», например .crossDisolve или Flip.

Ответ №1:

В качестве примера:

    let current = window.rootViewController!
   let transition = HeroTransition()
   // Collapse vertically in dismissal, over 1 second.
   current.view.hero.modifiers = [.scale(x: 1, y: 0.1, z: 1), .duration(1), .fade]
   // Rotate in, over 2 seconds.
   replacement.view.hero.modifiers = [.rotate(z:1.6), .duration(2), .fade]

   transition.transition(from: current, to: replacement, in: window) { (finished) in
      window.rootViewController = replacement
                
   }