【发布时间】:2012-03-16 07:41:39
【问题描述】:
我有一个带有各种控件的表单。其中一个控件允许用户通过点击控件后出现的模式视图来更改正在提交的表单的类别。当用户选择更改表单的类别时,表单需要根据新的类别重新显示控件。
除了从表单视图中删除以前的控件之外,关于被丢弃的控件还有什么需要担心的吗?考虑表单实现的以下方法:
- (void)showControls
self.controls = [NSMutableArray array];
for(UIControl *control in self.dataSource.controls){
[self.controls addObject:control];
[self.view addSubview:control];
}
}
如果我多次调用此方法(因为用户更改了表单类别,如前所述),我假设它会导致各种 NSMutableArrays 浮动而没有任何引用它们的指针。这可以吗?我使用的是 ARC,它会自动收集那些“丢失”的数组吗?
【问题讨论】:
标签: objective-c ios cocoa-touch memory-management automatic-ref-counting