Как бы я занялся кодированием анимации с добавлением UIView для метода takeSubviewToFront? - PullRequest
0 голосов
/ 28 августа 2018

Я пытаюсь добавить в свою функцию эффект анимации / увлечения UIView: self.view.bringSubview(toFront: self.webView)

Я пытался реализовать это программно, но UIView не анимирует; вместо этого он сразу показывает это без эффекта постепенного появления:

UIView.animate(withDuration: 1, animations: {
            self.view.bringSubview(toFront: self.webView)
        }, completion: nil)

Как мне реализовать анимацию для функций bringSubview(_: ) и sendSubview(_ : )? Я пытался искать везде, но, похоже, никто не нашел ответа.

1 Ответ

0 голосов
/ 28 августа 2018

Вы не можете использовать UIView.animate таким образом. Это работает только на определенных свойствах. В этом случае вам нужно анимировать свойство alpha.

Перед тем, как начать анимацию, установите alpha вида на 0, а затем переведите его на передний план:

self.webView.alpha = 0
self.view.bringSubview(toFront: self.webView)
// After that you animate the alpha:
UIView.animate(withDuration: 1, animations: {
    self.webView.alpha = 1
}, completion: nil)
...