在我的應用程序中,我想創建數組,添加到工具欄然後釋放它。但是,當我釋放它我的應用程序崩潰。爲什麼這樣...?怎麼做才能省略它?Release NSArray分配給UIBar
UIImage *button1Image = [UIImage imageNamed:@"button1Image.png"];
cameraToolbar = [[UIToolbar alloc] init]; //declared in .h
UIBarButtonItem *button1 = [[ UIBarButtonItem alloc ] initWithTitle: @"qwerty" style: UIBarButtonItemStyleBordered target: self action: @selector(doAction)];
[button1 setImage:button1Image];
//same method to add flexItem and button2Image
NSArray *items = [NSArray arrayWithObjects: button1, flexItem, button2, nil];
[cameraToolbar setItems:items animated:NO];
self.view = cameraToolbar;
[items release]; // here it crashes, why? How to fix?
[button1 release];
[button2 release];
[flexItem release];
[button1Image release]; // here i get "Incorrect decrement of the reference count
//of an object that is not owned at this point by the caller"
[button2Image release];
太棒了!然而,釋放buttonImages是什麼?我得到這個警告,當我分析.. – Vive
任何地方任何對象你可以採取這種行爲。 –
如果你使用alloc,保留,複製,那麼你必須釋放它。在ios5 ARC將幫助我們。現在我們必須手動完成。 –