Отслеживание основной анимации анимации

У меня есть два круга, которые перемещаются по экрану. Оба кружка представляют собой UIViews, которые содержат другие UIViews. Область за пределами каждого круга прозрачна.

Я написал функцию для создания CGPath, который соединяет два круга четырехугольной формой. Я заполняю этот путь прозрачным CALayer, занимающим весь экран. Поскольку слой находится за двумя круговыми UIView, кажется, что он соединяет их.

Наконец, два UIView анимируются с помощью Core Animation. Положение и размер обоих кругов изменяются во время этой анимации.

На данный момент единственный метод, с которым я добился успеха, - это прерывание анимации через равные промежутки времени с помощью NSTimer, затем повторное вычисление и рисование луча в зависимости от местоположения слоя презентации круга. Однако четырехугольник отстает от кругов при ускорении анимации.

Есть ли лучший способ сделать это с помощью Core Animation? Или мне следует избегать Core Animation и реализовать свою собственную анимацию с помощью NSTimer?

12
задан titaniumdecoy 29 November 2010 в 18:47
поделиться