Ответ 1
Swift 3/4 Синтаксис
Вот обновление с синтаксисом Swift 3:
UIView.animate(withDuration: 0.5, delay: 0.3, options: [.repeat, .curveEaseOut, .autoreverse], animations: {
self.username.center.x += self.view.bounds.width
}, completion: nil)
Если вам нужно добавить обработчик завершения, просто добавьте замыкание следующим образом:
UIView.animate(withDuration: 0.5, delay: 0.3, options: [.repeat, .curveEaseOut, .autoreverse], animations: {
// animation stuff
}, completion: { _ in
// do stuff once animation is complete
})
Старый ответ:
Оказывается, это очень простое исправление, просто измените options: nil
на options: []
.
Swift 2.2 Синтаксис:
UIView.animateWithDuration(0.5, delay: 0.3, options: [], animations: {
self.username.center.x += self.view.bounds.width
}, completion: nil)
Что изменилось?
Swift 2 избавился от списка опций, разделенных запятыми в C-Style, в пользу наборов опций (см.: OptionSetType). В моем исходном вопросе я передал nil
для своих опций, которые были действительны до Swift 2. С обновленным синтаксисом мы теперь видим пустой список опций в виде пустого набора: []
.
Примером animateWithDuration с некоторыми параметрами будет следующий:
UIView.animateWithDuration(0.5, delay: 0.3, options: [.Repeat, .CurveEaseOut, .Autoreverse], animations: {
self.username.center.x += self.view.bounds.width
}, completion: nil)