Отпустить или не отпустить кнопку (содержимое которой загружается из пера), вот в чем вопрос - PullRequest
1 голос
/ 01 июля 2010

У меня есть очень классический класс, который содержит кнопки и метки и т.д ...:

@interface ExerciseViewController : UIViewController {
// Hardcoding for outlets to XIB file

// Outlets can be passed only as singe variables in Interface Builder.
// Therefore, we can only declare stupid variables, not arrays of buttons.

// Bid array

// Labels S,W,N,E
IBOutlet UILabel *labelSouth;
IBOutlet UILabel *labelWest;
IBOutlet UILabel *labelNorth;
IBOutlet UILabel *labelEast;

Конечно, все эти свойства сохраняются:

@property (nonatomic, retain) IBOutlet UILabel *labelSouth;

Я просто хотел бычтобы узнать, должен ли я освободить все эти элементы в методе dealloc моего класса:

- (void)dealloc {
[super dealloc];
// Release all GUI objects;

Итак, я должен взять все свои свойства и отправить релиз каждому из них?Я склонен верить да, но я предпочитаю спросить.

С уважением, Apple92

Ответы [ 3 ]

2 голосов
/ 01 июля 2010

Если ваш класс сохраняет объект, вы берете на себя ответственность за него и должны освободить его позже.Это основа управления сохранением / выпуском памяти.

См. документацию Apple по правилам управления памятью .

2 голосов
/ 01 июля 2010

Да, если вы retain, вы должны release

0 голосов
/ 01 июля 2010

Насколько я понимаю, при работе с объектами из файла XIB свойства, к которым вы собираетесь присоединить их, должны быть (неатомные, назначить), и вы НЕ должны освобождать их в dealloc.Причина в том, что система загрузки XIB заботится об управлении памятью для объектов, которые она создает.

...