1. ホーム
  2. ios

[解決済み] iPhoneアプリのランドスケープモード、2008年システム

2023-01-05 22:06:31

質問

この質問は2008年のものであり、現在は歴史的な興味しかないことに注意してください。


デバイスの位置に関係なく、最初からランドスケープ モードで動作する iPhone アプリケーションを作成する最良の方法は何でしょうか?

プログラム上とInterface Builderを使用する方法の両方があります。

どのように解決するのですか?

歴史的な回答のみ。壮大な時代遅れ。

この回答は、現在では非常に古くなっていますのでご注意ください。

この回答は 歴史的な好奇心だけです。 .


エキサイティングなニュースです。以下の Andrew が発見したように、この問題は Apple によって 4.0+ で修正されました。

すべてのビューでビューのサイズを強制的に変更する必要はなくなり、ランドスケープが初回のみ動作するという、特定の深刻な問題が解決されたように思われます。

2011 年 4 月現在、4.0 未満のものをテストまたは構築することはできませんので、この質問は純粋に歴史的な好奇心です。 そのため、この質問は純粋に歴史的な好奇心です。


これがオリジナルの議論と解決策です。これらのシステムは操作可能でもないため、これは今ではまったく無関係です。


これを完全に動作させるのは非常に困難です。少なくとも 3 つの問題/バグがあります。

これを試してみてください。 インターフェイスビルダー ランドスケープデザイン

特に、次のように書かれていることに注意してください。 "そして、あなたはどこでも適切にshouldAutorotateToInterfaceOrientationを使用する必要があります"。 は、あらゆる場所、つまり、すべてのフルスクリーンビューを意味します。

この悪夢に役立つことを願っています。

ここで、よく知られている追加的な問題について重要な注意を喚起します。 複数の ビュー(すべてランドスケープ)。 は動作しません。 . これを覚えておかないと、この問題で何日も無駄にすることになります。これは文字通り「ありえない」ことです。これは、iOS プラットフォームにおける最大のオープンな既知のバグです。ハードウェアが 2 番目に読み込んだ画面を横向きにする方法は、文字どおり存在しません。迷惑なことですが、簡単な回避策、そしてあなたがしなければならないことは、そこに座っていてビューを交換できるように何もしない、つまらないマスター UIViewController を持つことです。

言い換えれば、iOS では、主要な知っているバグのためです。

[window addSubview:happyThing.view];
[window makeKeyAndVisible];

一度だけ可能 . その後、happyThing.view を削除して newThing.view を入れても、うまくいきません - それで終わりです。マシンは、ビューをランドスケープに回転させることはありません。Apple社でもうまくいかないのです。あなたが採用しなければならない回避策は、単にそこに座って、様々なビュー(happyThing、newThingなど)を保持するだけのUIViewControllerを全体的に持つことです。お役に立てれば幸いです。