2011-09-21 6 views
0

iOS에서 Mac에서 블록을 사용하는 것과 비슷한 방식으로 Core Animation을 사용하여 애니메이션을 수행 할 수 있습니까? 뷰를 제거하기 위해 애니메이션 끝 부분에 완성 블록을 설정할 수 있기를 원합니다.이 방법은 대리자를 통해 구현할 수 있지만 애니메이션을 사용하는 블록의 전체 지점은 이러한 고통을 피하는 것입니다.Mac에서 블록을 사용하는 코어 애니메이션?

답변

3

CATransaction + (공극) setCompletionBlock (보이드 (^) (공극)) 블록

이 트랜잭션 그룹 애니메이션이 완료 될 때 호출 블록 개체 .

[CATransaction begin]; 
[CATransaction setAnimationDuration:5.0]; 
[CATransaction setCompletionBlock:^{ 
    // this will be done when animation has completed 
}]; 
//do some things to your layers 
[CATransaction commit]; 
0

때때로. NSAnimationContext와 NSAnimationGroup은 모두 블록을 할당 할 수있는 completionHandler 속성을 가지고 있지만 다른 것들은 그렇지 않습니다.

관련 문제