2016-10-10 5 views
1

私は、2つのコントローラクラスとストーリーボードを備えたスムーズなCocoa Touchフレームワークを持っています。あるクラスから別のクラスにinstantiateViewControllerをしようとしたとき、それは動作していない、それは見えないストーリーボードを示しています。Cocoaフレームワークのストーリーボードへのアクセス

私が使用してbaseprojectからtest.storyboardを開始することができる午前:私は最初の1のボタンクリックで2番目のビューコントローラをインスタンス化したい

if let urlString = Bundle.main.path(forResource: "testProject", ofType: "framework", inDirectory: "Frameworks") { 
      let bundle = (Bundle(url: NSURL(fileURLWithPath: urlString) as URL)) 
      let sb = UIStoryboard(name: "test", bundle: bundle) 
      let vc = sb.instantiateViewController(withIdentifier: "TestViewcontroller") 
      self.show(vc, sender: nil) 
} 

enter image description here

を。今、私はこのコードブロックをイニシエータに使用していますが、動作していません。

if let urlString = Bundle.main.path(forResource: "testProject", ofType: "framework", inDirectory: "Frameworks") { 
      let bundle = (Bundle(url: NSURL(fileURLWithPath: urlString) as URL)) 
      let secondvc = UIStoryboard(name: "test", bundle: bundle).instantiateViewController(withIdentifier: "secondViewc") as! secondcontroller 

      self.show(secondvc, sender: nil) 
} 

答えて

0

最後に、問題の解決策を見つけました。

@IBAction func back(_ sender: AnyObject) { 
    let frameworkBundle = Bundle(for: Maincontroller.self) 
    let secondvc = UIStoryboard(name: "test", bundle: frameworkBundle).instantiateViewController(withIdentifier: "secondViewc") as! secondcontroller 
    self.present(secondvc, animated: true, completion: nil) 
} 

testProject - > Maincontroller.swiftの中に、上記のコードブロックを追加する必要があります。

関連する問題