LoginSignup
1
0

More than 5 years have passed since last update.

bundleファイルからviewコントローラーを取得しようとしたら、Unknown class [ViewController] in Interface Builder file.って言われた時

Last updated at Posted at 2016-01-28

発生した現象

ワークスペースで生成した別プロジェクトのbundleファイルを使おうとしていました。
hogeResources.bundleをアプリのプロジェクトで読み込みます。
こんな感じ。

NSBundle *bundle = [NSBundle bundleWithURL:[[NSBundle mainBundle]  URLForResource:@"hogeResources" withExtension:@"bundle"]];

そして、ストーリーボードを経由して、viewコントローラーを取得します。
こんな感じ。

UIStoryboard *storyboard = [UIStoryboard storyboardWithName:@"hoge" bundle: bundle];
HogeController *controller = [storyboard instantiateInitialViewController];

ここで問題発生。
Unknown class HogeController in Interface Builder file.
というメッセージがデバッグウィンドウに表示される。

もちろん、ちゃんと動くわけありません。

どうやって解決したか

アプリ側のプロジェクトのTARGETSから該当するターゲットを指定して、Build Settingsを表示します。

その中にある、Linkingの分類にある、Other Link Flagsをチェックしましょう。
-ObjCが設定されていなければしましょう。

何が問題なのか?

誰か教えて下さい。

なんか、CocoaPodsの時もこの項目いじった気がしますね。
xcodeの設定は難しいですね。

1
0
1

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0