在我的iPad應用程序中,應用程序在某段時間後崩潰: - (void)viewDidUnload方法
我正在使用AQGridView。
這個程序是關於匹配卡的類別。
因爲我在刪除單元格。
如果我只是打開應用程序幾分鐘它不會墜毀。
但如果我打的應用3至4分鐘和刪除許多細胞是越來越崩潰的方法。
一些內存泄漏,我解決不了......
我有一個陣列稱爲imageMarray
我做的洗牌就可以了。
In View Did Load。
imageMArray=[NSMutableArray initWithArray:CategoryImages];
imageMArray=[[self shuffleOnlyArray:imageMArray] retain];
在shuffleOnlyArray方法
-(NSMutableArray*)shuffleOnlyArray:(NSMutableArray*)sourceArray
{
NSMutableArray *destArray1 = [[[NSMutableArray alloc] initWithCapacity: [sourceArray count]] autorelease];
srandom(time(NULL));
while ([sourceArray count] != 0)
{
NSUInteger index = (NSUInteger)(random() % [sourceArray count]);
id item = [sourceArray objectAtIndex: index];
[destArray1 addObject: item];
[sourceArray removeObjectAtIndex:index];
}
[sourceArray release];
sourceArray=nil;
return destArray1;
}
並在洗牌方法,我寫
imageMArray=[[self shuffleOnlyArray:imageMArray] retain];
我應該在哪裏寫的釋放。 因此它確實消除了內存泄漏。
您是否嘗試刪除該行? – CodaFi 2012-03-26 05:27:22
以前它在viewDidUnload方法中的另一個視圖控制器上崩潰,所以我評論了該方法的每一行。現在它在另一個視圖控制器中崩潰。 – 2012-03-26 05:29:40
爲什麼連這個東西都設爲零?在ARC下,這是不必要的,沒有ARC,簡單的發佈消息就足夠了。 – CodaFi 2012-03-26 05:32:21