Добавить анимацию выбора в UIButton
У меня есть UIButton в одном из моих контроллеров ViewController с тремя различными изображениями состояния (обычное, выделенное и выбранное). Когда я нажимаю эту кнопку, она становится выделенной, а когда я отпускаю ее, выбирается. Я хочу сделать анимацию, которая изменяет выделенное изображение кнопки на выбранное за 4 секунды с помощью fadeIn или около того.
Любое предложение?
2 ответа
Пытаться UIView transitionWithView
установив сначала нормальные и выбранные изображения в UIButton
, а затем в обработчике действия анимировать изменение:
[UIView transitionWithView:self.addListButton
duration:0.3
options:UIViewAnimationOptionTransitionCrossDissolve
animations:^{
[self.addListButton setSelected:YES];
} completion:nil];
Я не хотел менять состояние UIButton
поэтому я просто изменил нормальное изображение в блоке анимации:
[self.addListButton setImage:[UIImage imageNamed:@"icon-addbutton.png"]
forState:UIControlStateNormal];
Вы должны зарегистрироваться самостоятельно UIButton
подкласс, и вам, вероятно, придется перезаписать setSelected
а также setHighlighted
с вашим собственным кодом анимации. Более безопасной ставкой будет подкласс UIControl
непосредственно и переопределить эти селекторы, чтобы у вас не было никаких UIButton
конкретное наследие.