Самый простой способ - сохранить ссылку на UIBarButtonItem
в качестве переменной экземпляра.
# header file
UIBarButtonItem *editButton;
Тогда ваш код становится
# .m file
editButton = [[UIBarButtonItem alloc]
initWithTitle:@"Edit"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(edit_clicked)];
[buttons addObject:editbutton];
Теперь в любом экземпляре метода отключение кнопки так же просто, как:
editButton.enabled = NO;
Также не release
немедленно, поскольку этот класс теперь владеет объектом кнопки. Так что release
вместо этого в методе dealloc
.