【发布时间】:2012-01-13 10:09:38
【问题描述】:
我有一个NSMutableArray,其中包含添加到滚动视图的UIImageView 对象。
[self.scrollView addSubview:UIImageView];
[self.array addObject:UIImageView];
我想在单击按钮后删除这些对象并添加新对象。我尝试通过在阵列上调用removeAllObjects: 来执行此操作,但这会导致崩溃。
for(int i=0;i<[self.array count];i++){
[[self.array objectAtIndex:i] removeFromSuperview];
}
[self.array removeAllObjects];
【问题讨论】:
-
请张贴您正在使用的代码。
-
我假设 addSubView:UIImageView 不完全一样,而您使用的是 UIImageView 的实例?您认为哪里有泄漏?
-
这段代码很好,正如你所展示的那样。该错误必须在您的代码中的其他位置。您需要发布更多周围的代码,以便我们找到问题。可能是您正在双重释放项目,或者您可能不小心将数组初始化为不可变数组而不是可变数组。您的代码中是否有任何黄色警告?
-
@JamesWebster 是的,我正在使用 UIImageView 的实例。为了让观众了解我使用了 UIImageView。我觉得removeallobjects中有泄漏。当我将 removeallobjects 用于数组时,它会崩溃,但同时我有另一个具有相同行为的 mutablearray,并且可以在其上应用 removeallobjects。我不知道问题出在哪里。
标签: iphone memory-leaks nsmutablearray