2013-02-06 1 views
2

전체 화면으로 비디오를 재생하는 매우 간단한 iPad 앱을 사용합니다. 비디오를 완벽하게 중앙에 놓기를 원하지만 초기로드시에는 너무 멀리 떨어져 있습니다. 그것을 회전 시키면보기가 완벽하게 중앙에 오도록 올바르게 재설정됩니다. 분명히 처음부터이 방법으로 보길 원합니다.iOS - 전체보기가 순환 후 위로 이동합니다.

NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@"movie" ofType:@"m4v"]]; 
moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url]; 
[moviePlayer prepareToPlay]; 
CGRect screenBounds = [UIScreen mainScreen].bounds; 
[moviePlayer.view setFrame:CGRectMake(0, 0, screenBounds.size.height, screenBounds.size.width)]; 
[self.view addSubview:moviePlayer.view]; 
moviePlayer.controlStyle = MPMovieControlStyleFullscreen; 
[moviePlayer play]; 
[super viewDidLoad]; 

이 앱은 가로 모드 만 표시로 설정되어 있으므로 회전 (대신 90)마다 180도 적용됩니다 :

여기있는 viewDidLoad에 내 코드입니다.

다음
@property (nonatomic, strong) MPMoviePlayerController *moviePlayer; 

가 내의 ViewController에서 합성 된 것 :

@synthesize moviePlayer; 

그래서 사람이 어떤 아이디어가 않습니다 BTW moviePlayer의 VAR는 그래서 같은 .H 파일에 설정되어 있습니까? 나는 0에서 시작하기 위해 "setFrame"을 변경하려고했지만, 0,0 대신 -20을 사용했지만 나중에 회전 할 때 엉망이되었습니다. 초기로드에서 벙어리 상태 표시 줄을 무시하는 방법이 있다면, 알고 싶습니다. 감사.

답변

2

시도의 ViewController 구현에

[self setWantsFullScreenLayout:YES]; 

를 호출. 이렇게하면 "초기로드시 벙어리 상태 표시 줄 무시"해야합니다.

+0

이 답변에 대한 의견이 많습니다. – Popeye

+0

1) 답변입니다. 2) 다른 게시물에 대해 언급 할 방법이 없습니다. 특정 권한이 필요합니까? – user1459524

+0

1) 사용자가 질문에 대답하지 않는 이유는 대답이 아닙니다. 2) 모든 답변과 질문에 "코멘트 추가"옵션이있어 모든 사람이 필요로하는 권한이 없습니다. 이것이 답이라면 질문을하지 말고 답을 설명하십시오 - "왜 이렇게합니까?" – Popeye

4

-viewDidLayoutSubviews에 프레임을 설정해보십시오. 레이아웃은 설정 방법이 아닌 레이아웃에서 처리해야합니다.

관련 문제