60
32

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

[Xcode7] 「Unknown class xxxxx in Interface Builder file.」が出る

Last updated at Posted at 2016-07-30

環境

以下の環境でのiOSアプリ作成

  • Xcode7
  • Swift

問題内容

Xcodeでビルドしたら下記メッセージがコンソールに出力された。

  Unknown class xxxxx in Interface Builder file.

「xxxxx」は、自分が追加したカスタムクラス名が入る。

自分は、ViewControllerのサブクラスで発生していた。

解決

ググるとこのケースは結構あるらしい。
原因は数パターンあるらしいが、色々試しても直らず途方にくれていたが、このサイトの内容で解消できた。感謝。

http://yoropipi.hatenablog.com/entry/2016/02/15/231430

原因

before.png

上記画像は、エラーが発生しているViewControllerを選択したときのインスペクタである。

カスタムクラスのModule名が「None」になっている。

解決方法

Moduleのセレクトボックスを選択してEnterを押下する。
下記画像のように「Current - yyyyy」と表示が変化すればOK。

after.png

原因・解決方法いろいろ

私が遭遇したパターンの情報に辿り着くまで時間がかかったので、ここでまとめておく。

パターン1:ビルドのターゲットになっていない。

「File -> New -> ...」のようにXcodeの機能を使用せずにドラッグ & ドロップすると、プロジェクトのビルド対象にならないらしい。

プロジェクトを選択し、「Build Phases」のCompile Sourcesに対象のファイルが入っていない場合には、追加すればOK。

パターン2:storyboardの設定不備

カスタムクラスの場合、特に注意する。
本ケースでは、Moduleの設定がおかしかったが、Classの設定がおかしいケースもあると思う。

パターン3:原因不明

  • 「Shift + Command + K」でビルド生成物をクリアする(全て1からコンパイルされる)。
  • Xcodeを再起動する。
  • シミュレータからアプリを削除して、再度コンパイル→実行する。
  • Macを再起動する。
60
32
0

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
60
32

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?