У меня есть метка, которая изначально расположена в центре экрана. В настоящее время он переходит из центра в правый конец экрана, а затем автоматически возвращается в исходное положение. Я хотел бы, чтобы он начал еще один animateWithDuration, чтобы он продолжался из центра, возвращаясь в левую позицию экрана, затем автореверсировался обратно в позицию и последовательно зацикливался оттуда.
Я уже пытался и успешно выполнил первую половину работы, но я не уверен, как перейти ко второй части, где начинается переход центр-> левый и цикл.
Код Swift 2.0:
func animateRight()
{
UIView.animateWithDuration(1.0, delay: 0.0, options: [ .Autoreverse, .CurveEaseInOut], animations: {
label.center.x = self.view.frame.width/2
}, completion: { finished in
if finished {
label.frame.origin.x = 0.0
animateLeft()
}
})
}
func animateLeft()
{
UIView.animateWithDuration(1.0, delay: 0.0, options: [ .Autoreverse, .CurveEaseInOut], animations: {
label.frame.origin.x = (self.view.frame.width/2) * -1
}, completion: { finished in
if finished {
label.center.x = self.view.frame.width/2
animateRight()
}
})
}
// Start process
animateRight()