Storyboardで追加したUIのプロパティ名を変更するとエラー

現象

  1. Storyboardで配置したUIを、ViewControllerにプロパティとして追加
  2. スペルミスなどでViewControllerに追加したプロパティの名前を変更
  3. 該当のViewControllerを開こうとするとエラーで落ちる

エラーメッセージ

 

2013-06-22 17:25:25.108 Tasks[15010:c07] *** Terminating app due to uncaught exception 'NSUnknownKeyException', reason: '[<AddTaskViewController 0xa0b1c20> setValue:forUndefinedKey:]: this class is not key value coding-compliant for the key limitAgeField.'

解決法

  • ViewControllerで定義されている名前は変更したがStoryboardで設定している名前が変更されてないエラーなのはわかるが、具体的な解決法がわからない。
  • エラーメッセージでぐぐるとxibファイルの変数名も変更しろと出るが、Storyboardオンリーで作っているのでxibファイルは見当たらない。
  • 仕方ないので以下の方法で解決
  1. Main.storyboardを選択しXCode右上のボタンのうちComparisonモードで開く
    ※Main.storyboardをテキストエディターで開いてもOK)
    f:id:wao9:20130622174049p:plain ←いちばん右のボタンを押せばOK
  2. storyboardのソースコードが表示されるので、エラーが出ているプロパティで名で検索
    (テキスト画面が左右に2つ出ますが、左を修正します)

    f:id:wao9:20130622174131p:plain

  3. 検索されたプロパティ名を直に変更

    f:id:wao9:20130622174233p:plain

 

これでエラーが出なくなりました。

 

動作環境

  • XCode5 Developer preview

  • iPhoneシミュレータ(iOS7)

  • MacOS 10.8.4