Одновременная анимация перехода UIViewController - PullRequest
0 голосов
/ 06 ноября 2018

Я пытаюсь добавить фоновое градиентное изображение и сдвинуть карту uiview снизу (вне экрана) к центру uiviewcontroller - одновременно выполняя обе анимации, когда отображается uiviewcontroller модально.

Я попытался установить стиль модального перехода uiviewcontroller для перекрестного растворения, который обеспечил бы эффект постепенного появления фонового градиентного изображения, и в viewDidAppear запустить анимацию, чтобы скользить вверх по * 1008. * карта снизу к центру.

Хотя это работает, у карты небольшая задержка, и в идеале я надеялся, что обе анимации происходили одновременно.

Возможна ли эта группировка? Любое руководство будет оценено.

Ниже приведен соответствующий код в модально представленном контроллере вида:

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    alertViewCenterYConstraint.constant += view.bounds.height

}

override func viewDidAppear(_ animated: Bool) {
    super.viewDidAppear(animated)
    UIView.animate(withDuration: 0.1, delay: 0, options: .curveEaseOut, animations: {
        self.alertViewCenterYConstraint.constant = 0
        self.view.layoutIfNeeded()
    }, completion: nil)
}

1 Ответ

0 голосов
/ 06 ноября 2018

Этот работает как волшебство. Я люблю это.

   override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)
    alertViewCenterYConstraint.constant += view.bounds.height
    DispatchQueue.main.async {
    UIView.animate(withDuration: 0.1, delay: 0.05, options: .curveEaseOut, animations: {
        self.alertViewCenterYConstraint.constant = 0
        self.view.layoutIfNeeded()
    }, completion: nil)

    }
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...