2016-12-20 5 views
1

Xcodeプロジェクトにサブプロジェクトを追加し、それをターゲットの依存関係として追加しました。私は今このサブプロジェクトにあるストーリーボードでビューコントローラを使いたいと思っています。これが可能かどうか、このサブプロジェクトからView Controllerをメインプロジェクトにどのようにインスタンス化するのかと思います。 「電卓」のストーリーボードがサブプロジェクトであるため、サブプロジェクトにあるストーリーボードの呼び出し/使用

let storyboard = UIStoryboard(name: "Calculator", bundle: nil) 
let calculatorViewController = storyboard.instantiateViewController(withIdentifier: "calculatorViewController") as! CalculatorViewController 
self.present(calculatorViewController, animated: false, completion: nil) 
を呼び出すと、動作しません。私はスウィフト3を使用しています。

答えて

1

私の問題は、Calculatorストーリーボードがメインバンドルにないことです。これは、UIStoryboardイニシャライザのバンドルにnilを渡すと、ランタイムがそれを探す場所です。

let storyboard = UIStoryboard(name: "Calculator", bundle: Bundle(for: calculatorViewController.self)) 
+0

私もことを試してみましたが、プロジェクトはCalculatorViewController.swiftファイルを見つけることができません:あなたはストーリーボードに含まれるクラスのいずれかのための束を渡した場合は何働くかもしれない

。あなたがそれをcmdキーを押しながらクリックすると、それはちょうどいいところに置かれます。未解決の識別子 –

+0

メインプロジェクトの依存関係としてサブプロジェクトを追加しましたか? – JAL

+0

はい、私は行方不明になるインポートステートメントはありますか?また、Calculator.appを埋め込みフレームワークとして追加し、コピーバンドルリソースに含めました。 –

関連する問題