저는 이것이 프로그래밍 문제로 stackoverflow에 적합하다는 것을 100 % 확신하지는 않습니다. 대부분 수학 논리 문제입니다. 값에서애니메이션을 계산하는 방법 타임 스탬프를 기준으로 strokeStart를 계산 하시겠습니까?
// Set the animation duration appropriately
animation.duration = duration
// Animate from 0 (no circle) to 1 (full circle)
animation.fromValue = strokeStart
animation.toValue = 1
// Do a linear animation (i.e. the speed of the animation stays the same)
animation.timingFunction = CAMediaTimingFunction(name: kCAMediaTimingFunctionLinear)
// Set the circleLayer's strokeEnd property to 1.0 now so that it's the
// right value when the animation ends.
progressCircle.strokeEnd = 1.0
때문에 키 값은 기간이다와 협력하고, 항상 것입니다 최종 값은 1로 :
나는 아래의 코드의 일부 원을 애니메이션하고 있습니다.
원의 총 360 도가 항상 240 초 (4 분)를 나타낼 것입니다.
나는 시간에 대한 값을 연결하고 내가 원을 만드는거야 때 값을 시작하는 기능을 설정,하지만 함께 힘든 시간을 보내고있어 무엇을하는 것은 적절 사람들을 계산하는 방법이다.
예를 들어,이 서클 중 하나를 그리면 서버에서 타임 스탬프를 가져옵니다. 잡은 타임 스탬프가 정확히 120 초 전이라고 가정 해 봅시다. 원은 이미 완료된 1/2 방법으로 그려야하고 원의 180 도의 나머지는 총 4 분 중 나머지 120 초에 그려 져야합니다. 또 다른 예는 타임 스탬프가 3 분 50 초 전에 완료 되었다면 원은 기본적으로 strokeStart를 높은 백분율로 설정하여 채워질 것이며 다음 10 초 동안은 채울 것입니다. 내가 타임 스탬프를 잡아하는 방법을 알고
, 나는 타임 스탬프가 현재 시간에서 얼마나 많은 초 잡아하는 방법을 알고,하지만 난 strokeStart을 계산하는 방법을 모르겠어요.
여기에 대한 의견이 있으십니까?
고맙습니다. 나는 왜 내 두뇌가 수학을 감쌀 수 없는지 모르겠다. 감사합니다. – user6820041