私はポートレートモードのみを使用してiOSアプリケーションを開発しています。私は、ユーザーがiPhoneを回すと、アプリケーションのすべてのビューに画像(320 * 480)を表示したいと思っています(lanscapeモード)lanscapモードを検出してUIImageを表示
どうすればいいですか?
私はポートレートモードのみを使用してiOSアプリケーションを開発しています。私は、ユーザーがiPhoneを回すと、アプリケーションのすべてのビューに画像(320 * 480)を表示したいと思っています(lanscapeモード)lanscapモードを検出してUIImageを表示
どうすればいいですか?
UIViewController
の方法didRotateFromInterfaceOrientation:
でこれを実行できます。これは、ユーザーがデバイスを回転した直後に呼び出されます。
- (void)didRotateFromInterfaceOrientation:(UIInterfaceOrientation)fromInterfaceOrientation
{
if (self.interfaceOrientation != UIInterfaceOrientationPortrait) {
// add image to self.view
} else {
// remove image from self.view
}
}
このメソッドは、各アプリケーションのビューコントローラで実装できます。または、これをカスタムサブクラスUIViewController
に実装して、すべてのアプリケーションのView ControllerにカスタムView Controllerを継承させることもできます。
EDIT
@デビッドダナムが示すように
、あなたがやろうとしているすべてのユーザーがデバイスを回転させたときに向きを変えるからアプリを防ぐためであれば、することができますので、そう簡単のUIViewController方法shouldAutorotateToInterfaceOrientation:
を実装することによって。この方法では、サポートしたいすべての方向に対して
YES
を返し、サポートしない場合は
NO
を返します。
shouldAutorotateToInterfaceOrientation:
から
NO
を返すために
- (BOOL)shouldAutorotateToInterfaceOrientation:(UIInterfaceOrientation)interfaceOrientation
{
// only allow portrait orientation
return (interfaceOrientation == UIInterfaceOrientationPortrait);
}
ありがとう、私はこれをテストします – samir
いいえ私はこれをしないでください。 iPhoneアプリケーションの魔法使いのいくつかのビュー、私はユーザーがアプリケーションでナビゲートし、彼が静的画像(myImage.png)を表示したいとアイフォーン(lanscape) )私は通常のビューに戻ります – samir