Можно ли использовать Core Animation для затухания UIBarButtonItem?
Мне любопытно, возможно ли каким-то образом переплетать Core Animation, чтобы придать "исчезновение" UIBarButtonItem? У меня есть tableView, который я представляю с двумя разными источниками данных. Как только конкретный источник данных сработает, я бы хотел постепенно ослабить текущие параметры UIToolBar и добавить новые.
Спасибо, что указал мне правильное направление.
2 ответа
Если вы действительно используете UIToolbar (обратите внимание на строчную букву "b"), а не UINavigationBar, есть очень простой способ изменить кнопки и сделать переход автоматически исчезающим, не переходя в Core Animation.
Если вы используете Interface Builder, вам понадобится ссылка на панель инструментов в вашем коде. Создайте свойство IBOutlet и свяжите панель инструментов с ним в IB:
@property (nonatomic, retain) IBOutlet UIToolbar *toolbar;
Это позволит вам ссылаться на UIToolbar как на self.toolbar. Затем создайте новые кнопки и добавьте их в NSArray и передайте их методу -[UIToolbar setItems:animated:] следующим образом:
UIBarButtonItem *newItem = [[[UIBarButtonItem alloc]
initWithBarButtonSystemItem:UIBarButtonSystemItemDone
target:self
action:@selector(handleTap:)] autorelease];
NSArray *newButtons = [NSArray arrayWithObjects:newItem, nil];
[self.toolbar setItems:newButtons animated:YES];
Я не верю, что есть способ контролировать альфу в UIBarButtonItem, но класс UIToolbar уже имеет метод для поддержки того, что вы пытаетесь сделать: -setItems:animated:.