6

かなり前にiPhoneアプリを作ってユニバーサルアプリにしようと思っているのですが、ストーリーボードを使ってiPad版を作れないかと思っていたので、iPhoneならMainWindow.xibを読み込み、iPadならMainStoryboard ファイルをロードします。これは可能ですか?

4

3 に答える 3

3

はい。ただし、実際には 2 つの別々のストーリーボード (iPhone 用と iPad 用に 1 つ) を作成する必要があります。

iPhone ストーリーボードで、mainwindow.xib を rootViewController の中央にドラッグし、全画面表示にするだけです。

その後、iPad の絵コンテで好きなことを行うことができます。

ただし、プロジェクトの概要で 2 つのストーリーボード ファイルが正しくリンクされていることを確認してください。

于 2012-11-01T03:55:15.610 に答える
3

ガッツィーニは正しく、自分の答えを入力する前に、これが真実であり、比較的簡単であることを確認するために調査を行っているときに、最初に彼の答えを得ました. だから彼に+1。

ただし、2 つの個別のストーリーボードは必要ありません。1 つのアーキテクチャに対して 1 つのストーリーボードが必要であり、既にサポートされているアーキテクチャに対して XIB ファイルが必要です。

これは、私が自分のテスト プロジェクトで行ったことを示すのに役立つスクリーンショットです。

はい、可能です

アプリケーションの plist を編集して、既に XIB ファイルがある特定のアーキテクチャの「nib」ファイルを使用し、新しいアーキテクチャのストーリーボードを指定するだけです。

于 2012-11-01T04:03:06.750 に答える
0

メイン インターフェイス ( Info.plist 内) またはメイン ストーリーボード (Info.plist内) を設定しない場合、iPad ではストーリーボードを使用し、iPhone ではペン先を使用する方が簡単です。NSMainNibFileNSMainStoryboardFile

代わりに、アプリのデリゲートを から移動し、クラス名をinの 4 番目の引数として渡してインスタンス化MainWindow.xibさせます。のファイルの所有者をアプリに委任させます。UIApplicationMainUIApplicationMainmainMainWindow.xib

アプリ デリゲートのapplication:didFinishLaunchingWithOptions:で、インターフェイス イディオムを調べることができます。

インターフェイスのイディオムが iPhone の場合は、MainWindowを使用してロードし-[NSBundle loadNibNamed:owner:options:]ます。

インターフェイス イディオムが iPad の場合、ウィンドウを作成し、MainStoryboardを使用してロードし+[UIStoryboard storyboardWithName:bundle:]、最初のビュー コントローラーを でインスタンス化し、その-[UIStoryboard instantiateInitialViewController]ビュー コントローラーをウィンドウのルート ビュー コントローラーとして設定します。

于 2012-11-01T04:02:48.190 に答える