swift 导航控制器pushViewController占用大量CPU

jv2fixgn  于 2023-02-28  发布在  Swift
关注(0)|答案(1)|浏览(139)

我设置了一个navigationController,每当我使用

navigationController?.pushViewController(registrationViewController, animated: true)

应用程序的CPU使用率无缘无故上升到100%。
我使用Time Profiler更好地了解导致CPU过度使用的原因,发现进程**_CFRunLoopRun**占用了大量CPU容量。
老实说,我不知道是什么原因导致了这个问题,因为视图控制器的表示和视图控制器本身真的很容易。

let registrationViewController = tryVC2()
navigationController?.pushViewController(registrationViewController, animated: true)

我还注意到,只有在使用pushViewController方法时才会发生这种情况,而在使用presentViewController时***不会发生这种情况。
如果你能为我指明解决这个问题的正确方向,我将不胜感激。
编辑:
第一节第一节第一节第一节第一次

ozxc1zmp

ozxc1zmp1#

我也遇到过同样的问题。我在一个视图控制器中有一个Spritekit skView,当我将另一个视图控制器推到导航堆栈上时,CPU会跳到100%以上。在导航离开之前,通过在skView上设置isPaused = true修复了这个问题。

相关问题