ToB企服应用市场:ToB评测及商务社交产业平台

标题: IOS开发日志-ios新建项目后-将storyboard去掉,版本调整为IOS13以下 [打印本页]

作者: 自由的羽毛    时间: 2025-2-17 16:50
标题: 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 中添加如下代码。
  1.         // 设置默认显示页面(此处为固定的写法)
  2.         let controller = ViewController()
  3.         self.window = UIWindow(frame: UIScreen.main.bounds)
  4.         window!.rootViewController = controller
  5.         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 代码

  1. //
  2. //  ViewController.swift
  3. //  cmMusic
  4. //
  5. //  Created by deng ming on 2025/2/4.
  6. //
  7. import UIKit
  8. class ViewController: UIViewController {
  9.     override func viewDidLoad() {
  10.         super.viewDidLoad()
  11.         // Do any additional setup after loading the view.
  12.         view.backgroundColor = .red     
  13.        // self.view.backgroundColor = .red
  14.     }
  15. }
  16. //
  17. //  ViewController.swift
  18. //  cmMusic
  19. //
  20. //  Created by deng ming on 2025/2/4.
  21. //
  22. import UIKit
  23. class ViewController: UIViewController {
  24.     override func viewDidLoad() {
  25.         super.viewDidLoad()
  26.         // Do any additional setup after loading the view.
  27.         view.backgroundColor = .red
  28.        // self.view.backgroundColor = .red
  29.     }
  30. }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。




欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) Powered by Discuz! X3.4