2018年3月28日

XcodeのInterfaceBuilderの操作で、画面項目モジュールの間で不整合が起きた時、ロジックエラーが無いにも関わらずエミュレータ起動が起動しないことがありました。

InterfaceBuilderの定義とロジックにおいてリンク関係(Control+マウスで項目指定)を付けていきます。
画面の項目」は、「ロジック上ではこの項目名ですよ!」をGUIで設定します。

過去のXcodeでは、InterfaceBuilderの定義だけ削除した場合、不整合が発生したのでエミュレータ起動をすると異常終了してしました。異常時の原因が全くわからないので、調査に時間を要した経験があります。

 

いろいろ調べるうちにInterfaceBuilderのView全体を選択して「→:Show the Connections inspector(一番右)」確認すると「」が付いていて、問題点を指摘してくれました。

その「」の表示とする項目自体、バッサリ定義がなくなり異常終了となることがありません。

button項目を削除した後

開発時の利便性向上ですが、ロジック上の「」(かつて定義されていた項目)は、チェックが必要となります。