Я использую анимацию, чтобы преобразовать кнопку, когда она нажата, я смог сделать кнопку больше. Тем не менее, я думал, что, используя .Repeat и .Autoreverse, кнопка вернется в нормальное состояние. (масштаб 1.0), но это не так! Возможно, я неправильно понял учебники и вопросы, которые я прочитал относительно .AnimateWithDuration
??.Repeat .AutoReverse не работает
Это код, который я использую:
let button = sender as! UIButton
UIView.animateWithDuration(1.0, delay: 0.6,
options: [.Repeat, .Autoreverse, .AllowUserInteraction],
animations:{
button.transform = CGAffineTransformMakeScale(1.2, 1.2)
}, completion: nil)
В другой вопрос, который я видел, что эта проблема может быть решена путем добавления .AllowUserInteraction, но это не так.
Я не знаю, имеет ли это значение, но этот код заключен в событие касания.
@IBAction func addButtonClicked(sender: AnyObject) {}
Что может быть здесь? это не так, как вы должны отменить анимацию?
С .Repeat и .Autoreverse кнопка будет «пульсирующей». Код работает, как ожидается, здесь, в тестовом коде. @IBAction func pushButton (отправитель: AnyObject) { let btt = отправитель как! UIButton UIView.animateWithDuration (1,0, задержка: 0.6, опции: [.repeat, .Autoreverse, .AllowUserInteraction], анимации: { btt.transform = CGAffineTransformMakeScale (1.2, 1.2) }, завершение: ноль) } – UlyssesR
Двойная проверка, связана ли кнопка с этой функцией, используйте точку останова, чтобы убедиться, что она ее вызывает. – UlyssesR
@UlyssesR это вызов, потому что кнопка становится больше, когда я нажимаю на нее, но она не возвращается в нормальное состояние. –