如何在紧接着segue之后立即运行动画而没有任何延迟?

时间:2018-06-30 13:37:11

标签: ios swift xcode uiviewanimation

我正在已加载的新UIViewController的内部视图上运行幻灯片动画。问题是,由于只能在ViewDidAppear()中执行动画,因此ViewController的加载时间与动画开始之间存在延迟。由于此延迟,因此该应用似乎存在性能问题。

该问题如何解决?

1 个答案:

答案 0 :(得分:0)

使用viewWillAppear应该可以解决您的问题。

动画代码应该是异步的,因为尚未在viewWillAppear内部显示视图

override func viewWillAppear(_ animated: Bool) {
    super.viewWillAppear(animated)

    DispatchQueue.main.async {
        self.appearanceAnimation()
    }
}

func appearanceAnimation() {
    //Add animaton here
}