2016-04-17 15 views
3

私はiOSアプリケーションで作業していますが、これをいくつかのストーリーボードに分割したいのですが、ストーリーボード間の参照ポイントをエントリポイントとして設定する方法がわからないという問題があります。ストーリーボード内で他のストーリーボードを参照することはできますか?

例えば、私は私のMain.storyboardはこのような何かを見たい:私はiOSの開発に新しいですし、私は、これは簡単なことを期待するだろうが、への道を見つけることができないよう

--> Authentication Storyboard --> Tabbed Storyboard --> ...

をそれをやる。

+0

:あなたは彼らが正しくストーリーボードで識別されていることを確認する必要があり、このようなViewControllersを参照したい場合は、コードは

if let storyboard = UIStoryboard(name: "A2ndStoryboard", bundle: nil) { if let vc = storyboard.instantiateViewControllerWithIdentifier("SomeViewController" as String) { navigationController?.pushViewController(vc, animated: true) } } 

...気にしません。 Login.storyboard、Main.storyboardのようなストーリーボードで、異なるストーリーボードからコントローラを呼び出す方法が混乱していますか? –

答えて

2

はい、プロジェクトで複数のストーリーボードを使用できますが、別のストーリーボードの中から直接参照することはできません。

は、あなたのプロジェクトの目標は、それに含まれるストーリーボードのいずれかを使用することができます起動時に使用するためにストーリーボードを参照

。ストーリーボードエントリーポイントの参照は、ターゲット設定で見つけることができます。

enter image description here

  1. ターゲット
  2. を選択して最初に使用するためにストーリーボードを選択し、メインインタフェースのドロップダウンの[全般]タブ
  3. を選択します。

コードでストーリーボードを参照するので、この例では、私はナビゲーションコントローラへのViewControllerをプッシュしたいです。私が参照したいviewcontrollerは、別のストーリーボードまたは私が使用している現在のものにあるかもしれません。あなたが複数欲しい

enter image description here

+0

これは私が必要とするものです。メイン・ストーリーボードが出発点であることが必要であるという間違ったアイデアがありました。ありがとう。 – dk87

1

複数のストーリーボードを使用しないでください。 viewcontrollerssegueの間にembednavigationcontrollerの複数のストーリーボードを使用してください。 exaでは、認証用に1つのviewcontrollerをタブの別のビューコントローラ(tabbarviewcontroller)と同様に使用します。 authenticationVCからtabbarVCにsegueを与えます。これが助けてくれることを願う

0

あなたはiOSの開発に新しいしていると言うように、私はあなたのためにこれをおさらいしてみましょう:):

Interface Builderの(IB)は、あなたのユーザー・インタフェースを設計するのに役立ちますXcodeのに組み込まれたツールですコードなしで。 IBができることはすべてプログラムでも行うことができます。 IBは、XIBファイルとストーリーボードの2種類のファイルをサポートしています。

XIBファイル(拡張子.xib)あなたはIBを使用して設計することができUIViewオブジェクトのコレクションです。

ストーリーボード(拡張子.storyboard)すべてはあなたがIBを使用して設計することができview性質を持っているUIViewControllerオブジェクトのコレクションです。

Conlusion:(現時点では)あり XIBsやストーリーボードのコレクションを表すインターフェイスビルダーのファイルタイプのようなものではありません。したがってストーリーボード内のストーリーボードは現在のように参照することはできません。代わりに、あなたはまだ別のストーリーボードにあなたのビューコントローラを分割し、をプログラムによっての間で移行することができます。

はここSO ヘルプを使用すると、プログラム的なトランジションと始める上で、別のスレッドです:

How can I load storyboard programmatically from class?

私はこのことができます願っています。

+0

この故障をありがとう、それは私がストーリーボードがどのように動作するはずであるかをより良く理解する助けになりました。受け入れられた答えは具体的な解決策を持っていたので、私はそれを受け入れましたが、私は両方を受け入れます。 – dk87

関連する問題