Дорогой все, что я реализовал две кнопки в панели навигации справа от текстового вида;Как скрыть одну из двух правых кнопок на панели навигации
UIToolbar* toolbar = [[UIToolbar alloc]
initWithFrame:CGRectMake(0, 0, 112, 44.5)];
// toolbar style is the default style
// create an array for the buttons
NSMutableArray* buttons = [[NSMutableArray alloc] initWithCapacity:3];
// create a button to run the job
UIBarButtonItem *runButton = [[UIBarButtonItem alloc]
initWithTitle:@"RUN"
style:UIBarButtonItemStyleBordered
target:self
action:@selector(runAs:)];
// Button style is the default style
[buttons addObject:runButton];
[runButton release];
// create a spacer between the buttons
UIBarButtonItem *spacer = [[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemFixedSpace
target:nil
action:nil];
[buttons addObject:spacer];
[spacer release];
// create a standard Edit/Done button with custom titles Edit/Save
self.editButtonItem.possibleTitles = [NSSet setWithObjects:@"Edit", @"Save", nil];
self.editButtonItem.title = @"Edit";
UIBarButtonItem *editButton = self.editButtonItem;
[buttons addObject:editButton];
[editButton release];
// put the buttons in the toolbar and release them
[toolbar setItems:buttons animated:YES];
[buttons release];
// place the toolbar into the navigation bar as Right Button item
self.navigationItem.rightBarButtonItem = [[UIBarButtonItem alloc]
initWithCustomView:toolbar];
[toolbar release];
Теперь в режиме редактирования Я хочу, чтобы скрыть кнопку RUN и когда кнопка RUN находится в действии, я хочу кнопку Изменить, чтобы скрыть. Может ли кто-нибудь предложить мне способ сделать это без переопределения кнопок в режиме редактирования (например, для элемента back/left button setHidesBackButton: (BOOL) animated: (BOOL)) или любого альтернативного метода? Большое спасибо.
Уважаемый Джейкоб, Спасибо за ответ. Я пробовал приведенный выше код, но он дает ошибку «скрытый - это что-то не структура или объединение», возможно, потому что «runButton» не является UIButton, это UIBarButtonItem. [runButton setHidden: (BOOL)] не работает, но [runButton setEnabled: (BOOL)] работает. Любое дальнейшее предложение будет высоко оценено. Спасибо – UCU110
@ UCU110, попробуйте мой обновленный ответ. –