iOS中第一次调用Segue非常缓慢

3

我有几个简单的Segue --> 显示(例如Push)

在某些Segue上,第一次调用Segue时会有延迟(约2秒)。

shouldPerformSegue和prepare上没有执行任何代码。

下一个视图的ViewDidLoad在延迟后被调用。

当延迟发生时,我经常会收到此警告:

objc[3993]: Class PLBuildVersion is implemented in both...

然而,似乎没有解决此问题的方法 --> 链接

我也尝试按照以下方式手动调用 Segue:

DispatchQueue.main.async {
    self.performSegue(withIdentifier: "theIdentifier", sender: theSender)
}

有没有办法使这个更具响应性?谢谢!

你是否在viewdidload或viewwillappear中执行了调用webservice的繁重UI任务? - Bista
@Mr.Bista 不,viewDidLoad也会在延迟后被调用。 - eljoe
@AhmadF 是的,同样的事情。 - eljoe
1
可能是你的下一个视图控制器在 viewDidLoad 上有很重的渲染或执行,减少它并再试一次。我遇到了相同的问题,下一个视图控制器包含 webview,所以我将 webview 的加载移到其他函数中。 - Tj3n
@Tj3n 在一个视图中,我加载了一个Webview,你把它移动到了哪个其他函数中? - eljoe
显示剩余3条评论
1个回答

0
尝试将视图控制器嵌入导航控制器中。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接