1
iOSアプリケーションでHUDとして使用されているサブビューを作成しました。このアプリはポートレートとランドスケープの表示方向をサポートしています。サブビューの向きが正しくない
モードが横向きであっても、サブビューはポートレートモードで表示されることがあります。
self.infoHUDViewController = [[[InfoHUDViewController alloc] initWithNibName:@"InfoHUD" bundle:nil] autorelease];
[self.view addSubview:self.infoHUDViewController.view];
サブビューをviewDidLoad
方法で追加されたのであれば、それは非常にうまく機能:サブビューは、これらの行によって追加されます。ただし、ビューがボタンの押下に応答するIBAction
メソッドで追加されている場合は、ランドスケープモードでは機能しません。サブビューは、ポートレートモードの場合と同様に表示されます(90°回転したように見えますが、画面の半分の幅しか塗りつぶさず、画面境界を超えて広がります)。
本当に奇妙なこと:サブビューのView Controllerのinitメソッドでは、表示の向きが正しくlandscapeに設定されています。私はここに何かを逃していますか
あなたはiPhone 5や6などの将来のデバイスには適していない画面サイズをハードコードしました。 –
true ...しかし、この回答は長い間ずっと以前に書かれました。さて、私はもうフレームサイズをハードコードしません。 – spa