0

我在理解所有 ARC 时遇到了一些麻烦。这是我的程序的细分

http://i.stack.imgur.com/tfRaH.png

我这样写是为了强调 VC1 更像是“主屏幕”……它并没有真正改变的变量。您输入一些值并将它们传递到实例化的音乐播放器中。问题是当离开 VC2 并进入启动屏幕以选择不同的值时,随着循环的继续,内存只会越来越高。

这是它应该如何工作的吗?我注意到当我回到启动屏幕时,它的所有值都已重置,这告诉我它绘制的东西是新的。为什么每次在这两个屏幕之间切换时内存都会不断增加?

4

1 回答 1

1

“为什么每次在这两个屏幕之间切换时,内存一直在增加?”

可能是因为你实际上并没有在两个控制器之间切换——当你“返回”到 vc1 时值被重置的事实告诉我,当你“返回”时你实际上实例化了一个新的 vc1 实例。使用 segue 时,您应该只使用 unwind segue 来返回到之前的控制器。其他类型的 segue 总是实例化新的控制器。

于 2013-08-29T01:23:48.167 回答