this post에서 저자는 viewWillAppear
의 탭 전환 후 애니메이션을 다시 시작할 수 있다고했습니다.iOS 전환 후 애니메이션 다시 시작
내 startAnimation
을 viewWillAppear
및 viewDidAppear
모두라고했지만 여전히 실패했습니다.
아래는 내 코드의 일부입니다. 첫째 viewDidLoad
에서 startAnimation
를 호출하여 표시 할 때
- (void)startAnimation {
[UIView setAnimationsEnabled:YES];
[UIView animateWithDuration:0.5f
delay:0.0f
options:UIViewAnimationOptionAutoreverse|UIViewAnimationOptionRepeat
animations:^(void){
self.foreground.transform = CGAffineTransformMakeTranslation(0.0f, 5.0f);
}
completion:nil];
}
애니메이션은 완벽하게 작동하지만, 다른 탭으로 전환 한 후 작동하지 않습니다.
startAnimation
에 대한 관찰자를 UIApplicationWillEnterForegroundNotification
으로 등록한 경우에도 응용 프로그램이 백그라운드에서 다시 시작한 후에도 작동하지 않습니다.
도와주세요, iOS 개발에 익숙합니다. 정말 고마워요.
나는 당신이 말하는 것을 정말로 이해하지 못했다. 내가 말했던 것처럼, 나는 viewWillAppear에서 나의 startAnimation을 불렀다. 왜 작동하지 않는지 알고 싶습니다. –
"마침내 뷰의 변형을 정체성으로 설정"한다는 의미를 이해합니다. 이해할 수없는 사람들을 위해, 나는'startAnimation'의 시작 부분에'self.foreground.transform = CGAffineTransformIdentity;'를 추가했습니다. 애니메이션이 작동하려면 ** 필수 **입니다. –
감사합니다. Yi Huang, 두 번째 메모는 나를 위해이 문제를 해결했습니다. – djskinner