Мне было интересно, можно ли изменить цвет UIBezierPath strokeColor во время его анимации. Например, если он проходит под определенным углом, равным 45 градусам, он изменяется от зеленого до оранжевого, а если он проходит через 66 градусов, он идет от оранжевого до красного.Как изменить цвет UIBezierPath Stroke во время анимации?
1
A
ответ
0
Кто-то еще предложил использовать «постепенный» (градиентный) слой. Если вы можете создать градиент, который соответствует вашим потребностям, тогда это сработает.
Вы можете сделать что угодно, создав изображение, которое содержит нужные цвета, а затем установите слой фигуры в качестве слоя маски на слой этого изображения и анимируйте изменения в пути, установленном в слое формы.
Я использовал такую технику, чтобы создавать различные виды «стирающих» переходов, которые показывают изображение. См нить ниже для информации и рабочий код, показывающий, как создать «Clock вытирать», который почти точно, что вам нужно:
How do you achieve a "clock wipe"/ radial wipe effect in iOS?
вы можете использовать GradualLayer. – aircraft
Что такое GradualLayer? –
@Faisai Syed https://developer.apple.com/reference/quartzcore/cagradientlayer – aircraft