如何在 segue 后立即运行动画而不会有任何延迟?



我正在已加载的新UIViewController的内部视图上运行幻灯片动画。问题是,因为动画只能在ViewDidAppear()中超过,所以在加载ViewController和动画开始之间有一个延迟。由于这种延迟,该应用程序似乎存在性能问题。

如何解决这个问题?

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

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

override func viewWillAppear(_ animated: Bool) {
super.viewWillAppear(animated)
DispatchQueue.main.async {
self.appearanceAnimation()
}
}
func appearanceAnimation() {
//Add animaton here
}

最新更新