SwiftUI空白項目的創(chuàng)建步驟:
1.打開Xcode,然后使用菜單命令:File > New > Project命令,打開項目創(chuàng)建窗口。
2.在項目模板選擇窗口中,選擇Single View App模板,然后點擊Next按鈕,進入下一步設置窗口。
3.在項目配置窗口中,需要在Language:選擇Swift語言,然后在User Interface選擇SwiftUI,然后填寫其它的配置選項,點擊Next按鈕,完成項目的創(chuàng)建。如下圖所示:

截屏2019-12-0410.32.22.png
4.SwiftUI項目創(chuàng)建完成之后,其項目結(jié)構(gòu)和代碼功能如下圖所示:

截屏2019-12-0410.39.10.png
項目導航區(qū)說明:
| 文件名 | 說明 |
|---|---|
| AppDelegate.swift | 提供didFinishLaunchingWithOptions等方法,用來處理程序啟動之后的事件,或者響應來自外部的事件。 |
| SceneDelegate.swift | 設置應用程序窗口的rootViewController,并指定使用哪個ContentView作為rootViewController的rootView。 |
| ContentView.swift | 項目的初始界面,用戶界面上的可視控件可以放置在此文件中。 |
| Assets.xcassets | 項目的資源文件,您可以在此處放置項目中所需的圖片、顏色等資源。 |
| LaunchScreen.storyboard | 用來配置項目啟動過程中所顯示的內(nèi)容。 |
| Info.plist | 項目的配置屬性文件,配置產(chǎn)品名稱、版本號、Build號、Bundle Identifier等項目。 |
代碼編輯區(qū)說明:
//導入SwiftUI框架
import SwiftUI
//定義一個名為ContentView的結(jié)構(gòu)體,該結(jié)構(gòu)體遵循View協(xié)議,遵循View協(xié)議的元素才可以在SwiftUI框架中。就像在UIKit中,所見皆UIView一樣,在SwiftUI中,所見皆是View。
struct ContentView: View {
//添加View協(xié)議中的body屬性,在body屬性中通過SwiftUI提供的各種布局控件,完成界面元素的搭建。關鍵詞some表示返回的是某種View,但是SwiftUI不需要在意是具體的哪種View
var body: some View {
//在屏幕上顯示一個標簽,標簽的內(nèi)容位于雙引號之內(nèi)
Text("Hello World")
}
}
//當處于Debug模式時,允許執(zhí)行下方的代碼
#if DEBUG
//定義一個遵循PreviewProvider的結(jié)構(gòu)體,用于設置在右側(cè)預覽區(qū)需要實時預覽的內(nèi)容
struct ContentView_Previews: PreviewProvider {
//添加PreviewProvider協(xié)議中的previews屬性,用來設置在實時預覽區(qū)顯示的內(nèi)容
static var previews: some View {
//設置在實時預覽區(qū)顯示ContentView結(jié)構(gòu)體中的內(nèi)容,您還可以在此設置預覽的模擬器尺寸、是否Dark Mode等選項。
ContentView()
}
}
#endif
實時預覽區(qū)說明:
SwiftUI 的 Preview 是 Apple 用來對標 RN 或者 Flutter 的 Hot Reloading 的開發(fā)工具。由于 IBDesignable 的性能上的慘痛教訓,而且得益于 SwiftUI 經(jīng)由 UIKit 的跨 Apple 平臺的特性,Apple 這次選擇了直接在 macOS 上進行渲染。因此,你需要使用搭載有 SwiftUI.framework 的 macOS 10.15 才能夠看到 Xcode Previews 界面。
常用快捷鍵:Option + Command + P 刷新 preview
參考資料
SwiftUI-Guide