애니메이션으로 일련의 그림을 표시하는 UIImageView가 있습니다. 프로젝트의이 부분은 잘 작동합니다.애니메이션이 멈출 때 UIImageView에 알려주려면 어떻게해야합니까?
애니메이션이 끝나면 레이블을 표시하고 싶습니다. 이미지 뷰가 애니메이션 종료시 트리거 할 이벤트가 있습니까?
애니메이션으로 일련의 그림을 표시하는 UIImageView가 있습니다. 프로젝트의이 부분은 잘 작동합니다.애니메이션이 멈출 때 UIImageView에 알려주려면 어떻게해야합니까?
애니메이션이 끝나면 레이블을 표시하고 싶습니다. 이미지 뷰가 애니메이션 종료시 트리거 할 이벤트가 있습니까?
는 애니메이션이
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0]; //the animation will last for 1.0s
//some animation code here
[UIView commitAnimations];
[self performSelector:@selector(someMethodToDisplayLabel) withObject:nil afterDelay:1.0];
//someMethodToDisplayLabel will be called after 1.0s
여기에 이벤트/위임자가없는 것 같습니다. 내 첫 번째 본능은 애니메이션의 길이를 직접 계산 한 다음 NSTimer를 설정하여 애니메이션이 끝나면 NSTimer가 다음에 표시하려는 내용을 표시하도록합니다.
아름다운 갈 것입니다 당신이 시간과 동일한 지연
performSelector:withObject:withDelay
를 구성 애니메이션이 동시에setAnimationDuration:
를 사용하여 이동합니다 기간을 설정! 정확히 내가 원했던 것. – Chris음, UIImageView에는 애니메이션 작업을 수행하는 자체 startAnimating 및 stopAnimating 메소드가 있습니다. 나는 Chris가 사용하고 있지만 UIView 애니메이션 메서드를 호출하지 않는다고 생각합니다. "isAnimating"또는 "animating"값을 듣기 위해 KVO 트릭을 사용했지만 작동하지 않습니다. UIImageView에는 animationDuration 및 animationRepeatCount 속성이 있으므로 애니메이션이 언제 중단 될지 예상 할 수 있다고 생각합니다 (기간 * 반복 횟수). – zonble
그래, 내 대답은 이러한 기간 및 반복 횟수 속성을 사용하여 자신의 애니메이션을 언제 시작할 것인지 파악할 것을 제안합니다. – Jaanus