Проблема в том, что вы опускаете установщик и присваиваете menuButtons свойство напрямую. Попробуйте это:
-(id) initWithButtons:(NSMutableArray*)buttonArray {
self = [super init];
if (self) {
[self setMenuButtons:buttonArray];
}
}
Вы не показали, как объявлено свойство menuButtons , но я предполагаю, что это:
@property (nonatomic, retain) NSArray* menuButtons;
Это автоматически сохранит кнопки меню для вас каждый раз, когда вы устанавливаете его с помощью установщика. Если ваша собственность объявлена так:
@property (nonatomic, assign) NSArray* menuButtons;
тогда вам нужно сохранить массив вручную:
-(id) initWithButtons:(NSMutableArray*)buttonArray {
self = [super init];
if (self) {
menuButtons = [buttonArray retain];
}
}