으로 애니메이션하지 :서브 뷰 (MPMoviePlayerController) 내가 지금처럼 컨테이너보기에 <code>MPMoviePlayerController</code>을 추가 해요 컨테이너보기
self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:self.videoURL];
. . .
self.moviePlayer.view.frame = self.frame;
[self addSubview:self.moviePlayer.view];
self
는 컨테이너이다. 이 컨테이너보기는보기 컨트롤러에 의해 생성 될 때 오프 스크린으로 인스턴스화됩니다. 컨테이너 뷰는 뷰에 있고 컨테이너 뷰에는 MPMoviePlayerController
이 있습니다.
컨테이너보기를 화면에 애니메이트하면 작동합니다. 다른보기가 슬라이드되고이보기가 슬라이드됩니다. 그러나 MPMoviePlayerController
은 프레임이 화면에 나타나지 않습니다. 따라서 MPMoviePlayerController
의 컨테이너보기는 화면에서 이동하지만 컨테이너보기에서는 이동하지 않습니다. 허용되지 않습니까? 아니면 뭔가 빠졌습니까? 용기 뷰 애니메이션 코드는 아래와 같다 :
[UIView animateWithDuration:ANIMATION_LENGTH animations:^() {
for(int i = beginTag; i < beginTag + [self subviews].count; i++) {
UIView *viewPointer = [self viewWithTag:i];
CGRect viewFrame = viewPointer.frame;
viewFrame.origin.x -= SCREEN_WIDTH_VC;
viewPointer.frame = viewFrame;
}
} completion:^(BOOL finished) {
[self.vidLoad playVideo];
}];
그러면 화면 오프 화면에있는 요소를 애니메이션 한 후 화면에 오프 스크린 요소를 가져 처리한다. 모든 제안을 듣고 기뻐요!
사실이보기의 하위보기는 컨테이너보기로 이동하지 않습니다. 이 시점에서 필자는 내 뷰 계층 구조가 잘 설계/지원되지 않는다고 추측합니다. 죄송합니다. – bgoers