次の問題があります。iPhone アプリを持っていて、ユニバーサルにアップグレードしたい これを行うと、期待される MainWindow-iPad.xib が得られます。ただし、ウィンドウのサイズは 320x480 にハードコーディングされています。また、窓からの眺めはありません。私は赤いです、これは自動的に iPad サイズになるはずなので、何か間違ったことをしていると思います。私は正確に何が欠けていますか? 前もって感謝します
4 に答える
私はこれを得た。自動的に作成された ipad xib を削除し、元の xib をインターフェイス ビルダーで開き、メニューから iPad に変換を選択して修正しました。次に、ni はそれを -iPad という名前で保存し、corredt ターゲットに追加しました。
はい、UIWindow
オブジェクトの寸法は iPhone 画面のサイズにハードコーディングされています。サイズを変更するオプションがあることに気付くまで、これも私を混乱させましUIWindow
た.Interface Builderの.xibでオブジェクトを選択します...属性ペインで、「起動時にフルスクリーン」チェックボックスがオンになっていることを確認します。
St3fan が言うように、おそらく iPad ビルド用の特定のメイン ウィンドウ .xib が必要になるでしょう。
私の答えを見てください:
すべてのサンプルと同様の方法で EAGLView を使用して、GLES アプリケーションで同様の問題が発生しましたが、iphone3、iphone4、および ipad をサポートしたいと考えています。
[EAGLView initWithCoder] からの私のコンテキスト作成では、eaglLayer の rect をメイン画面と一致させるように強制していました。これは、iphone と iphone4 で機能しました (つまり、320x480 または 640x960 の gl サーフェスが得られました) が、ipad の場合、これにより 768x1024 のサーフェスが得られました。現在は 640x960 にトリミングされています。結局のところ、「起動時のフルスクリーン」オプションは、ビュー(私の場合はEAGLView)のinitWithCoderの後に適用されるようです。
私の解決策は、[EAGLView initWithCoder] で何もせず、layoutSubviews 呼び出しで AppDelegate の didFinishLaunchingWithOptions が呼び出された後にのみ、実際にビューを初期化することでした。
HTH、フォーク
おそらく と も作成する必要がありMainWindow-iphone.xib
ますMainWindow-ipad.xib
。