2012-04-30 5 views
0

UIViewの自動サイズ変更。 Xcodeでの値(0,20,768,1024)を示しているが、ユーザーは、Xcodeでそれを変更しますが、あなたのコード内のビューの幅をrepintしようとすることはできません。ポートレートモードで幅のUIViewの値が異なる

NSLog(@"Board view w %f", self.view.size.width); 
NSLog(@"Board view h %f", self.view .size.height); 

あなたのために取得する値肖像画の幅は1024または1004です

1004の場合、残りの20ピクセルについて何が起こるか知りたいですか?事前

答えて

0

多くのおかげであなたはおそらくトップUIStatusBarの20ピクセルをカウントされていません。

frameを手動で設定することもできます。

-(void)willRotateToInterfaceOrientation: (UIInterfaceOrientation)orientation duration:(NSTimeInterval)duration{ 
    NSLog(@"didRotateFromInterfaceOrientation"); 
    if(orientation == UIInterfaceOrientationPortrait || fromInterfaceOrientation == UIInterfaceOrientationPortraitUpsideDown){ 
     [moviePlayer.view setFrame:CGRectMake(0,0,768,1024)]; 
    } else { 
     [moviePlayer.view setFrame:CGRectMake(0,0,1024,768)]; 
    } 
} 
+0

I「が小さい計算されたアプリケーション、のUIView(UIImage 200ピクセルの高さとタイトル画像、UImage 124ピクセルの高さとUIImage 700ピクセルの高さとバーとしてバックグラウンド)を開発メートル しかし、私はビデオを再生するためのボタンを追加しました私のムービープレーヤーのフレームを私のビューの境界線のコードに設定しました。 [moviePlayer.view setFrame:self.view.bounds]; ムービーの再生が終了した後、私のビュー表示がシフトのために間違っていた20 px 私のmoviePlayer.viewをポートレートモードの場合は(0,0,768,1024)に設定し、横長モードの場合は(0.0,1024,768)モード あらかじめ多くのご協力ありがとうございます。 – poa

+0

フレームを手動で変更するよう提案して回答を編集しました。 – MacTeo

+0

ありがとう、でもそれは仕事ができません – poa

関連する問題