IOS开发日志-ios新建项目后-将storyboard去掉,版本调整为IOS13以下

目标IOS版本12,Xcode 16.2,记录ios新建项目后,如何将故事板storyboard和SceneDelegate 文件去掉,调整为代码开发。

创建后的项目中包含SceneDelegate,SceneDelegate 是 iOS 13 引入的类,用于管理应用程序的生命周期和界面显示。如果开发IOS13以下的项目,需要对SceneDelegate 进行调整。

调整步骤:

将 var window: UIWindow? 复制或者移动到 AppDelegate 当中。

删除 SceneDelegate

删除AppDelegate 中标红的代码。

删除 Main.storyboard 。

删除 Info.plist 中的标红部分。

设置默认显示的界面

AppDelegate 中添加如下代码。

Swift 复制代码
        // 设置默认显示页面(此处为固定的写法)
        let controller = ViewController()
        self.window = UIWindow(frame: UIScreen.main.bounds)
        window!.rootViewController = controller
        window!.makeKeyAndVisible()

程序运行后,没有显示红色背景,并且出现了报错,说明没有加载到 ViewController ,检查一下。

Thread 1: "Could not find a storyboard named 'Main' in bundle NSBundle </Users/dengming/Library/Developer/CoreSimulator/Devices/E911900E-95D7-40F2-BDA0-F7EDCF15F82E/data/Containers/Bundle/Application/D17467AA-3EA9-4577-8B0B-9C16FC6941D9/cmMusic.app> (loaded)"

将target中info 中的 Main storyboard file base name 属性值,设置为空。

再次运行,已经可以成功加载到 ViewController ,并移除了故事板。

实现效果

附:AppDelegate 和 ViewController 代码

Swift 复制代码
//
//  ViewController.swift
//  cmMusic
//
//  Created by deng ming on 2025/2/4.
//
import UIKit
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        view.backgroundColor = .red     
       // self.view.backgroundColor = .red
    }
}
//
//  ViewController.swift
//  cmMusic
//
//  Created by deng ming on 2025/2/4.
//
import UIKit
class ViewController: UIViewController {
    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view.
        view.backgroundColor = .red
       // self.view.backgroundColor = .red
    }
}
相关推荐
sunfdf3 小时前
移动硬盘上的文件消失了?以下是Mac电脑解决方法
macos·电脑
wonderomg12 小时前
Mac安装openclaw步骤
macos·openclaw
humors22113 小时前
[原创]AI工具:读取手机系统文件工具
windows·ios·安卓·鸿蒙·文件·苹果·读取
whatzhang00713 小时前
在 macOS 上从零配置 Vim:开启语法高亮 + 安装 vim-polyglot + 设置 gruvbox 主题
macos·vim·excel
humors22113 小时前
[原创]AI工具:手机文件查杀病毒工具
windows·ios·手机·安卓·鸿蒙·杀毒·苹果
徐健峰1 天前
Claude Code 安装完全指南(Mac 版):Git、环境变量、PATH 与常见报错一次讲清(2026)
git·macos·arcgis
AppOS1 天前
手把手教你 Openclaw 在 Mac 上本地化部署,保姆级教程!接入飞书打造私人 AI 助手
人工智能·macos·飞书
2501_915918411 天前
iOS性能测试工具 Instruments、Keymob的使用方法 不局限 FPS
android·ios·小程序·https·uni-app·iphone·webview
qing222222221 天前
Linux中修改mac地址(重启后依然生效)
linux·服务器·macos
GameTomato1 天前
【Xcode】【资源创建失败】【XCode更新最新版】XCode更新最新版,创建资源文件夹一直读取不到的问题
ide·macos·xcode