Если вы действительно используете UIToolbar (обратите внимание на нижний регистр «b»), а не на UINavigationBar, есть очень простой способ изменить кнопки, и переход автоматически исчезнет, не отбрасываясь в Core Animation.
Если вы используете Interface Builder, вам понадобится ссылка на панель инструментов в вашем коде. Создать свойство IBOutlet и связать панель инструментов к нему в IB:
@property (nonatomic, retain) IBOutlet UIToolbar *toolbar;
Это позволит вам ссылаться на UIToolbar в self.toolbar. Затем, создавать новые кнопки и добавить их в NSArray и передать это - [UIToolbar setItems: анимированный:] метод следующим образом:
UIBarButtonItem *newItem = [[[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(handleTap:)] autorelease];
NSArray *newButtons = [NSArray arrayWithObjects:newItem, nil];
[self.toolbar setItems:newButtons animated:YES];
нашел этот пост в то время как прибегая к помощи - примечания: есть '[я. navigationItem setLeftBarButtonItem: myBarButton animated: YES] 'метод, который я использовал для этой цели. благодаря! – taber