我的应用程序即将完成,我一直在使用仪器进行分析。我正在检查保留各种物体的数量。
我一直小心地释放任何我称之为alloc的对象,而这些对象似乎没有泄漏 - 所以很酷。
但是,我有一个视图控制器,里面有UIPickerView。我通过在IB中将它拖到我的NIB上来设置它,使用IBOutlet定义属性,合成它,然后将它全部连接起来。
每次启动视图时,UIPickerViews的数量似乎都会增加一个。我假设我不需要自己发布这种东西,因为我将它分配给了一个属性(使用非原子,保留)。
这发生在我的所有UI内容 - 按钮等,而不仅仅是选择器视图。我只是以此为例。
有人可以帮助我吗?
谢谢!
答案 0 :(得分:0)
加载视图时,将为您保留从NIB创建的所有项目,并初始化指向那些保留的子视图对象的IBOutlet指针。您需要在viewDidUnload中释放它们。你在做吗?
在viewDidUnload中,您应该释放从NIB创建的所有对象,并将这些指针设置为nil。您还应该在dealloc中释放这些相同的对象。 Example here.