Анимированные кнопки UIB

У меня есть несколько кнопок, которые я хотел бы оживить.

Я посмотрел и попробовал метод animateWithDuration, но, похоже, это для Views, и я не смог заставить свою реализацию работать.

Может ли этот метод работать и для кнопок анимации? если нет, то как это можно сделать?

РЕДАКТИРОВАТЬ У меня есть следующий код

-(void) animate:(UIButton*) b withMonster: (int) monster withState: (int) state andLastState:(int) last_state {
if (state < last_state) {
    float duration = 1.0 / 10;
    __block int stateTemp = state;
    [b animateWithDuration: duration
                animations: ^{ [UIImage imageNamed:[NSString stringWithFormat:@"m%d.a000%d.png", monster, state]]; }
                completion: ^{ [self animate: A1 withMonster: monster withState: stateTemp++ andLastState: last_state];; }];


}

и я называю это так

[self animate: A1 withMonster: monsterDecider withState: 1 andLastState: 5];

При выполнении этого кода приложение вылетает.

Является ли это правильным для вызова с самим собой в обоих вызовах (сам, будучи ViewController).

Спасибо

1 ответ

Решение

Вы можете анимировать кнопки, да. В блоке анимации вам нужно изменить некоторые параметры кнопки, например:

[UIView animateWithDuration:animTime
                 animations:^{button.frame = newFrame;}];

Глядя на ваш код, вы, вероятно, захотите установить свойство button.imageView.image для нового изображения (ваш код в настоящее время загружает новое изображение, но не устанавливает его для кнопки).

Однако объекты UIImageView фактически поддерживают переключение между несколькими изображениями без необходимости использования методов UIView animateWithduration:....

Вы, вероятно, хотите установить следующие свойства:

button.imageView.animationImages
button.imageView.animationDuration
button.imageView.animationRepeatCount

Тогда позвони

[button.imageView startAnimating];

и UIImageView сделает всю анимацию за вас. См. Документы на UIImageView: http://developer.apple.com/library/ios/#documentation/uikit/reference/UIImageView_Class/Reference/Reference.html

Другие вопросы по тегам