1

Swift 3 で swinject を使用しています。.xib ファイルにある別のビュー コントローラーである現在のビュー コントローラーに表示しようとしています。

swinject を使用しないプロジェクトで実行すると、機能します。私のプロジェクトでは、swinject を使用するとクラッシュします: libc++abi.dylib: 型 NSException のキャッチされない例外で終了します

ビューコントローラーを定義するために使用するコードは次のとおりです。

let container = Container() { c in
    c.register(testViewController.self) { r in
        let myVC = testViewController(nibName: "testView", bundle: nil)
        return myVC
    }
}

現在のviewControllerにtestViewControllerを表示しようとする方法は次のとおりです(たとえば、ボタンをクリックしたIBActionで):

self.present(container.resolve(testViewController.self)!, animated: true, completion: nil)

成功せずに別のソリューションを試しました。swinject を削除することはできません (この選択は私のものではありません)。さまざまなステップで表示するビューコントローラーがたくさんあるため、.xib ファイルを使用する必要があります。

助けてくれてありがとう。オリビエ

4

0 に答える 0