Shuntiger Tech Diary

iOS/Androidエンジニアが気になる技術やガジェットなどを気のままお届けするブログ

Main.storyboardをリネームして使うときにハマったこと

Xcodeでプロジェクトを作成したときに元々用意されているMain.storyboardをリネームして使おうとしたときにハマった。

環境

  • Xcode11.1

 試したこと

  • Main.storyboardをProject Navigatorからリネーム
  • Info.plistからMain storyboard file base nameをリネーム
  • Main Interfaceを確認 リネーム後の名称に置き換わっていることを確認

ビルドすると"NSBundleでMain.storyboardが見つかりません"というエラーが表示される。

*** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: 'Could not find a storyboard named 'Main' in bundle NSBundle </Users//Library/Developer/CoreSimulator/Devices/069B163A-4FE5-4849-9299-CBF8EB19FF02/data/Containers/Bundle/Application/6FE49B37-3698-4E8F-ACA7-C9AB43F6DBC0/<project_name>.app> (loaded)'

今まではこのやり方で問題なかったはずなのに🤔

解決方法

  • Info.plistにある"Storyboard Name"にあるValueがMainのままになっていたのでリネームしたら直った。

Info.plist>Application Scene Manifest>Scene Configuration>Application Session Role>Item 0 (Default Configuration)>Storyboard Name⬅︎ココ

f:id:hyaku-juu-ichi:20200209111603p:plain

  • 原因はXcode11, iOS13からInfo.plistに"Application Scene Manifest"の設定が追加されたことにあった。

参考