2011-12-05 9 views
1

私はいくつかのオブジェクトを持つビューを持っています。そのうちの1つは、ビデオを再生するウェブビューです。このビューは、デバイスが回転するときにオブジェクトのサイズと位置を変更します。この問題は、フルスクリーンでビデオを再生しているときに、風景でビデオを見始めると、ビデオを見ている間(フルスクリーン)、デバイスを回転させてから、ビューに戻るときに完了ボタンを押しますオブジェクトはその方​​向にあるべき位置にありません。コントロール終了ボタン

私は関数内の位置を設定しました。私はviewdidloadとwillAnimateRotationToInterfaceOrientationでその関数を呼び出しますが、ビデオを見ているときにどのように回転を制御できますか?

+0

viewDillLoadではなく、viewWillAppearでオブジェクトの位置を設定する必要があります。 – Luke

+0

私はviewwillappearを使用しましたが、ビデオから返信すると、そのメソッドは呼び出されません – Alfonso

答えて

0

あなたはこのような何かを行うことができ:再生が終了すると、あなたはサブビューのサイズを変更し、プレイヤーが閉じるまでにするために、あなたのメソッドを呼び出すとき

-(void) viewDidLoad 
{ 
    [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(playerPlaybackDidFinish:) name:MPMoviePlayerWillExitFullscreenNotification object:nil]; 
} 

- (void) playerPlaybackDidFinish:(NSNotification*)notification 
{ 
    [self resizeSubviews]; 
} 

だから、あなたのビューは、オリエンテーションのために正しいはず。

あなたのニーズに適切に合う場合は、代わりにMPMoviePlayerWillExitFullscreenNotificationに登録することもできます。

+0

私はwebviewでビデオを再生しています。これはwebviewでも使えますか?ありがとう – Alfonso

+0

しかし、どのように私はあなたのコードの変数を変更するのですか? – Alfonso

+0

[[NSNotificationCenter defaultCenter] addObserver:セルフセレクタ:@セレクタ(playerPlaybackDidFinish :)名前:MPMoviePlayerPlaybackDidFinishNotificationオブジェクト:self.player]; – Alfonso

関連する問題