2016-08-23 3 views
0

에 CAKeyframeAnimation을 시작할 수 없습니다.내가 <code>0</code>에 <code>speed</code>을 설정하고 사용자 상호 작용 동안 <code>timeOffset</code><code>0</code> 사이 <code>1</code>을 조정하여 맥 OS (그러나 아이폰 OS에도 적용)에 대화 형 애니메이션을 만드는거야 중간

잘 작동하지만 시작 위치가 가운데에 있어야합니다. 따라서 timeOffset은 처음에 0.5으로 설정되었습니다. 문제는 어떤 이유로 timeOffset 범위가 0.5 ~ 1.5으로 설정되어 있다는 것입니다. 이것은 CoreAnimation의 버그입니까?

+0

** 단지 ** 재생 **하려면 0.5에서 1.5까지의 범위가 필요합니까? 애니메이션의 후반부? 또는 1.5에서 중간에 시작하여 끝까지 재생하고 처음으로 되돌아 가며 중간까지 다시 재생할 때까지 걸립니다. – LucasTizma

답변

0

Core Animation은 macOS와 iOS간에 일관성이 있어야하지만 iOS 만 말할 수 있습니다.

timeOffset은 정규화 된 값이 아닙니다. 즉, 0에서 1까지 항상있는 것은 아닙니다. 애니메이션의 beginTime에서 오프셋 된 리터럴 시간입니다. 기본값은 0입니다. 애니메이션의 지속 시간, 채우기 모드 및 반복 횟수 (또는 반복 지속 시간)에 따라 예상됩니다.

예를 들어, 애니메이션 재생 시간이 1.0 초라고 가정하는 동작은 중간 시점 인 timeOffset 0.5에서 시작하여 애니메이션이 끝날 때까지 timeOffset 1.0에서 다시 스냅합니다. 애니메이션 시작 부분을 애니메이션의 중간 부분 인 timeOffset 1.5까지 계속합니다.

예, 이것은 예상되는 동작이며 버그 일 가능성이 없습니다. (참고로, Core Animation에서 Core Animation을 사용하는 데 실제 버그가 발생하지 않았습니다. 매우 견고합니다.)

관련 문제