我有一個自定義的UIView,作爲子視圖在幾個地方添加到我的應用程序中。我通過設置屬性發送視圖NSMutable陣列,並顯示註釋圖。這工作正常,除了我的應用程序中的一個視圖。我在包含圖的每個視圖的viewDidLoad部分中使用此代碼。@property setter中的泄漏
endNoteDisplay =[[NoteDisplay alloc] initWithFrame:CGRectMake(0,0,320,180)];
endNoteDisplay.tag = 100;
endNoteDisplay.backgroundColor = [UIColor colorWithPatternImage:[UIImage imageNamed:@"Note_Bkg.png"]];
NSMutableArray *tmpNts = [[NSMutableArray alloc] initWithObjects: @"C", @"E", @"G", @"A",nil];
endNoteDisplay.noteSpread = tmpNts;
[tmpNts release];
[self.view addSubview:endNoteDisplay];
[endNoteDisplay release];
如果我刪除
endNoteDisplay.noteSpread = tmpNts;
線一切正常就好了無泄漏。如果我把它放在樂器中顯示內存泄漏。當我離開當前視圖(顯示註釋的位置)並返回到上一個視圖(它有一個包含不同註釋選項列表的顯示錶)時,會發生泄漏。
- 我的應用程序按預期工作,這是即將發生的唯一泄漏。
有人可以告訴我爲什麼這會產生泄漏?我的NoteDisplay
中的noteSpread
財產設置爲nonatomic retain
。
[儀器說可能有重複,我有內存泄漏,但我沒有看到它](http://stackoverflow.com/questions/3214327/instruments-says-i-have-a-memory-leak- but-i-dont-see-it) – Caleb