Как заставить форму расти при нажатии кнопки? - PullRequest
0 голосов
/ 05 ноября 2018

Я хочу масштабировать объект бесконечно, пока нажата кнопка. После освобождения объект перестает масштабироваться. Я также хочу, чтобы процесс повторялся. Например, я могу сбросить объект и снова увеличить его.

Прямо сейчас я использую 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()
    }
}

Однако я считаю, что это своего рода неубедительный подход, поскольку объект не масштабируется бесконечно, и процесс, насколько я знаю, не может быть «сброшен».

...