好的,现在这对我来说真是令人难以置信,我真的无法理解......我用谷歌搜索了,但仍然没有。
我有一个UINavigationController设置,用于推送根视图控制器。然后,当按下UIButton时,根视图控制器会推送一个新的视图控制器(实际上它是一个TableViewController),这就是事情变得怪异的地方。
如果我将“动画”设置为“是”,则应用只会崩溃。
[[self navigationController] pushViewController:listView animated:YES];
如果我更改此设置并将“动画”设置为“否”,应用程序将继续正常运行并且功能非常出色...我将“动画”设置为“是”,然后再次崩溃。
最终,我会喜欢它,如果我能保留动画,它毕竟是关于iOS的最美好的事情之一,但在目前的情况下,我不能为我的生活弄清楚发生了什么
请帮我弄清楚这里可能出现的问题。
答案 0 :(得分:1)
当动画启动时,Core Animation正在从根视图控制器和新视图控制器访问CALayer
个对象,视图的绘制部分。关闭动画时,Core Animation不需要根视图控制器的CALayer
个对象。也许您在根视图中发布了一些视图,并且它过快地支持CALayer
对象。
答案 1 :(得分:1)
谢谢Berna先生,你实际上给了我一个提示我解决方案的提示。问题是我正在推动的视图控制器实际上是一个表视图控制器,其单元格是根据NSArray中的条目动态创建的。我在viewDidLoad函数中初始化NSArray,但是我已将其设置为自动释放,因此在CALayer绘制视图之前它已从内存中释放。