Управление анимацией UIView при перемещении между различными VC - PullRequest
0 голосов
/ 03 февраля 2019

Как новичок я борюсь с некоторыми базовыми вещами.

Итак, у меня есть анимация вида в моем основном UIViewController, но когда я перехожу на другой UIViewController изатем вернитесь к основной анимации останавливается.

Ну, моя анимация в viewDidLoad(), я уже пытался вызвать его из viewWillAppear() и viewDidAppear(), но, вероятно, это не решение.
К сожалению, я не могу понять, где перезвонитьанимация, кто-нибудь когда-нибудь проходил через эту маленькую проблему?

Если может помочь, это код, который я использую:

UIView.animate(withDuration: 1.0, delay:0, options: [.repeat, .autoreverse, .allowUserInteraction], animations: {
        self.viewAnima.transform = CGAffineTransform(scaleX: 1.2, y: 1.2)
    }, completion: nil)  

1 Ответ

0 голосов
/ 03 февраля 2019

ViewDidAppear - неправильное место для запуска анимации.вместо

Например.Есть делегат.Реализуйте делегат в первом viewcontroller.при отклонении второго viewController вызовите делегата.и поместите в него блок анимации и запустите анимацию с задержкой 0,2 с.это дает ощущение, что нужно отказаться от просмотра и запустить анимацию

// Поместите этот код в функцию делегата.

DispatchQueue.main.async(.now()+0.2) {
        UIView.animate(withDuration: 2.0, animations: { () -> Void in
            // Do you animation here
           })
        }
...