清理Info.plist中的Storyboard相关配置
告别Storyboard入口
当你决定放弃Storyboard,转而采用纯代码进行UI布局时,Info.plist文件中的一些默认配置就需要进行清理。这些配置是系统用来查找和加载Storyboard的,如果它们仍然存在,可能会导致不必要的警告或错误。🚀
清理这些配置是确保你的项目完全脱离Storyboard的关键一步,让你能够完全掌控UI的创建过程。
移除主要Storyboard文件设置
Info.plist中有一个名为UIMainStoryboardFile(或在Xcode中显示为Main storyboard file base name)的键。这个键明确告诉iOS系统你的应用启动时应该加载哪个Storyboard文件。
由于我们不再使用Storyboard,这个键就变得多余了。移除它,系统就不会再尝试寻找一个不存在的Storyboard文件了。
- 操作步骤:
- 在Xcode的项目导航器中找到
Info.plist文件并打开。 - 找到
Main storyboard file base name这一行。 - 选中该行,然后点击底部的减号按钮
-将其删除。
- 在Xcode的项目导航器中找到
清理Application Scene Manifest
对于iOS 13及更高版本,Info.plist中引入了Application Scene Manifest(应用程序场景清单)的概念。它主要用于管理多场景应用,并且其中包含了与Storyboard相关的配置。
具体来说,Scene Configuration下的Application Session Role中,有一个Storyboard Name的键。这个键同样指向了应用的初始Storyboard。
- 操作步骤:
- 在
Info.plist中找到Application Scene Manifest。 - 展开
Scene Configuration->Application Session Role->Item 0 (Default Configuration)。 - 找到
Storyboard Name这一行。 - 选中该行,然后点击减号按钮
-将其删除。
- 在
为什么需要清理这些配置?
清理Info.plist中的Storyboard相关配置至关重要。如果不清理,即使你删除了Main.storyboard文件,系统仍然会尝试去加载它,这可能导致应用启动失败或出现运行时错误。
想象一下,你告诉系统去一个地方找东西,但那个地方已经空了。清理配置就是告诉系统:“嘿,别去那里找了,那里什么都没有了!” 这样可以避免不必要的麻烦。✨
验证清理结果
完成上述清理步骤后,你可以通过以下方式验证你的Info.plist是否已经干净:
- 查看源代码: 右键点击
Info.plist文件,选择Open As->Source Code。 - 检查XML结构: 确保XML中不再包含
<key>UIMainStoryboardFile</key>或<key>UISceneStoryboardFile</key>这样的键值对。
<key>UIMainStoryboardFile</key>
<string>Main</string><key>UISceneConfigurations</key>
<dict>
<key>UIWindowSceneSessionRoleApplication</key>
<array>
<dict>
<key>UISceneConfigurationName</key>
<string>Default Configuration</string>
<key>UISceneDelegateClassName</key>
<string>$(PRODUCT_MODULE_NAME).SceneDelegate</string>
<key>UISceneStoryboardFile</key>
<string>Main</string> <!-- 确保这一行被删除 -->
</dict>
</array>
</dict>通过这些简单的步骤,你就成功地将项目从Storyboard的束缚中解放出来,为纯代码UI布局打下了坚实的基础!💪 这是一个非常棒的开始,你正在迈向更灵活、更强大的iOS开发之路!