Xcode - storyboard_swift版 01:故事模板
Storyboard
1 - 新建一个工程,同样使用 Single View App Template,开发语言选择 swift!完事后 Xcode 的主界面应该如下图所示
这个新项目包含了 2 个类:AppDelegate 和 ViewController, 此外还有今天的主角 Main.storyboard。这是一个只支持竖屏显示的 App,在设置中 Deployment Info/Device Orientation 下面的 Landscape Left 和 Landscape Right 选项干掉
2 - 查看 Main.storyboard
注:老版本中的默认场景是一个正方形。因为 Xcode 6 默认为 Storyboard 和 nib 文件开启自动布局 Auto Layout 和尺寸归类 Size Classes。自动布局和尺寸归类这两项新技术可以构建易于调整大小的用户界面,这对支持不同尺寸的 iPhone 和 iPad 非常有用。自动布局由 iOS 6 引入,尺寸归类由 iOS 8 引入。来张回忆杀,如下图
在 Xcode 询问操作时,选择保留 iPhone 的尺寸归类数据,然后点击 Disable Size Classes
3 - 从右下方的对象库里拖出一个 btn 控件,丢进视图控制器中,控件拖进来之后就会显示在左边的文档大纲 Document Outline 中,缩小版的文档大纲就是 Dock
运行效果
4 - 初始视图控制器在 App 是如何加载的呢?答案就在应用代理 application delegate 中
1 import UIKit 2 3 @UIApplicationMain 4 class AppDelegate: UIResponder, UIApplicationDelegate { 5 6 var window: UIWindow? 7 8 func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { 9 // Override point for customization after application launch. 10 return true 11 } 12 }
@UIApplicationMain 标记指定这个 AppDelegate 类为该模块的入口。使用 Storyboard 时,应用代理必须继承 UIResponder ,必须含有 UIWindow 属性,而且几乎所有的方法都是空的,甚至 application(_:didFinishLaunchingWithOptions:) 也只是返回 true 而已!秘密藏在 Info.plist 文件中

Storyboard 用 UIMainStoryboardFile(即 Main storyboard file base name 键) 来指明 App 启动时必须加载的 Storyboard 的名称
当设置生效,UIApplication 会加载对应名称的 Storyboard 文件,自动将该 Storyboard 中的初始视图控制器实例化,并将其纳入一个新的 UIWindow 对象中
同样在 General 分页的 Project Settings 和 Deployment Info 中也可以看到
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· .NET10 - 预览版1新功能体验(一)