Skip to content

1.1 创建不含Storyboard的Xcode项目

创建不含Storyboard的Xcode项目,开启你的纯代码iOS开发之旅吧!🎉 摆脱Storyboard的束缚,你会发现代码的世界更加自由和灵活。让我们一步步来,确保你掌握每个细节。

创建新项目

首先,打开你的Xcode。在启动界面,选择 "Create a new Xcode project"。你会看到一个模板选择界面。在这里,选择 "iOS" 选项卡下的 "App" 模板。点击 "Next"。

接下来,填写项目信息。

  • Product Name: 输入你的项目名称,比如 "MyCodeApp"。
  • Organization Identifier: 输入你的组织标识符,通常是你的域名反过来,例如 "com.example"。
  • Interface: 关键的一步!选择 "SwiftUI"。是的,你没看错,即使我们要纯代码开发UIKit,这里也要选择SwiftUI。这是因为我们需要先创建一个不包含Storyboard的项目。
  • Language: 选择 "Swift"。
  • 确保取消勾选 "Include Tests" 和 "Include UI Tests",除非你现在就需要它们。点击 "Next"。

选择一个你喜欢的目录来保存项目,然后点击 "Create"。

移除Storyboard

项目创建完成后,你会发现项目导航器中有一个 ContentView.swift 文件和一个 Assets.xcassets 文件夹。现在,我们要移除Storyboard。

  1. 在项目导航器中,找到 Info.plist 文件。
  2. 展开 Info.plist 文件,找到 "Application Scene Manifest" 键。
  3. 删除 "Application Scene Manifest" 键。这将移除对Scene的Storyboard引用。
  4. 删除 ContentView.swift 文件。右键点击该文件,选择 "Move to Trash"。
  5. 删除 Assets.xcassets 文件夹。右键点击该文件夹,选择 "Move to Trash"。

配置项目设置

现在,我们需要配置项目设置,告诉App使用代码来配置UI。

  1. 打开 Info.plist 文件。
  2. 添加一个名为 "Storyboard Name" 的键,类型为 "String",并将其值设置为空字符串。这告诉App不要加载任何Storyboard。
  3. 找到 "Main storyboard file base name" 键,删除它。

修改AppDelegate

接下来,我们需要修改 AppDelegate.swift 文件,来配置窗口。

  1. 打开 AppDelegate.swift 文件。
  2. 删除 application(_:didFinishLaunchingWithOptions:) 方法中的所有Scene相关的代码。
  3. 添加以下代码到 AppDelegate.swift 文件中:
swift
import UIKit

@main
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?

    func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool {

        window = UIWindow(frame: UIScreen.main.bounds)
        let viewController = UIViewController()
        viewController.view.backgroundColor = .white
        window?.rootViewController = viewController
        window?.makeKeyAndVisible()

        return true
    }
}

这段代码创建了一个 UIWindow 对象,设置了根视图控制器,并将窗口显示出来。

运行项目

现在,你可以运行你的项目了。点击Xcode中的 "Run" 按钮(或按下 Cmd + R)。你应该会看到一个空白的白色屏幕。这表明你已经成功创建了一个不包含Storyboard的iOS项目!🎉

你已经迈出了纯代码开发的第一步。接下来,你可以开始添加各种UIKit控件,构建你的App界面了。记住,实践是最好的老师!💪

本站使用 VitePress 制作