Я хочу масштабировать объект бесконечно, пока нажата кнопка. После освобождения объект перестает масштабироваться. Я также хочу, чтобы процесс повторялся. Например, я могу сбросить объект и снова увеличить его.
Прямо сейчас я использую UIViewPropertyAnimator
на объекте, который выращивает объект в 100 раз за 5 секунд. По касаниям .began
аниматор начинается и по касаниям .ended
аниматор делает паузу.
grow = UIViewPropertyAnimator(duration: 5, curve: .easeIn)
{
/**
Finds circleLayer in subview of circle.
**/
for subview in self.circle.subviews
{
subview.transform = subview.transform.scaledBy(x: 100, y: 100)
}
}
@objc func tap(sender: UIGestureRecognizer)
{
if sender.state == .ended
{
grow.pauseAnimation()
}
if sender.state == .began
{
grow.startAnimation()
}
}
Однако я считаю, что это своего рода неубедительный подход, поскольку объект не масштабируется бесконечно, и процесс, насколько я знаю, не может быть «сброшен».