2010-02-23 5 views
1

나는 다음과 같이 UIView의 이동 애니메이션 한 애니메이션을 적용 할 수있는 다른 일을 발생합니다아이폰 애니메이션 애니메이션 한 가지

CGRect rightPop = CGRectMake(167, 270, 142, 73);  
[UIView beginAnimations:nil context:NULL]; 
[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationBeginsFromCurrentState:YES]; 
[UIView setAnimationDuration:0.4]; 
[rightToast setFrame:rightPop]; 
[UIView commitAnimations]; 
애니메이션이 잘 발생하지만, 애니메이션 될 앱의 다른 부분 (원인

예 : 탐색 바 등).

다른 애니메이션을 어떻게 멈출 수 있는지 아는 사람 있습니까?

답변

3

애니메이션 블록을 중첩 할 수 있기 때문에 상황이 발생합니다. beginAnimations를 통해 두 개를 열고 있지만, commitAnimations를 통해 하나만 닫아야합니다. 두 번째 애니메이션 블록이 아직 열려 있으므로 추가 애니메이션이 놀라운 일은 아닙니다. beginAnimations를 두 번 호출하는 이유를 모르겠습니다. 필요하지 않습니다. 그것을 버리면 정상적으로 작동합니다.

+0

고맙습니다! 내 앱이 해고 된 직원의 복수심에 가득 찬 유령에 의해 더 이상 붙어 있지 않습니다. – WoodenKitty

관련 문제