SwiftUI 官方教程(二)
2. 自定義 Text View
為了自定義 view 的顯示,我們可以自己更改代碼,或者使用 inspector 來幫助我們編寫代碼。
在構建 Landmarks 的過程中,我們可以使用任何編輯器來工作:編寫源碼、修改 canvas、或者通過 inspectors ,無論使用哪種工具,代碼都會保持更新。

接下來,我們使用 inspector 來自定義 text view 。
SwiftUI教程

2.1 在預覽中,按住 Command 並單擊問候語來顯示編輯窗口,然后選擇 Inspect 。
編輯窗口顯示了可以修改的不同屬性,具體取決於其 view 類型。

2.2 用 inspector 將文本改為 Turtle Rock ,這是在 app 中顯示的第一個地標的名字。

SwiftUI教程
2.3 將 Font 修改為 Title 。
這個修改會讓文本使用系統字體,之后它就能正確顯示用戶的偏好字體大小和設置。

Edit the code by hand to add the .color(.green) modifier; this changes the text’s color to green.
To customize a SwiftUI view, you call methods called modifiers. Modifiers wrap a view to change its display or other properties. Each modifier returns a new view, so it’s common to chain multiple modifiers, stacked vertically.
2.4 在代碼中添加 .color(.green) ,將文本的顏色更改為綠色。
如果想自定義 SwiftUI 的 view,我們可以調用一類叫做 modifiers 的方法。這類方法通過包裝一個 view 來改變它的顯示或者其他屬性。每個 modifiers 方法會返回一個新的 view,因此我們可以鏈式調用多個 modifiers 方法。
ContentView.swift
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Turtle Rock")
.font(.title)
.color(.green)
}
}
struct ContentView_Preview: PreviewProvider {
static var previews: some View {
ContentView()
}
}

view 的真實來源是其實是代碼,當我們使用 inspector 修改或刪除 modifiers 時,Xcode 會立即更新我們的代碼。
2.5 這次我們在代碼編輯區按住 Command ,單擊 Text 的聲明來打開 inspector ,然后選擇 Inspect 。單擊顏色菜單並且選擇 Inherited ,這樣文字又變回了黑色。

2.6 注意,Xcode 會自動針對修改來更新代碼,例如刪除了 .color(.green) 。
ContentView.swift
import SwiftUI
struct ContentView: View {
var body: some View {
Text("Turtle Rock")
.font(.title)
}
}
struct ContentView_Preview: PreviewProvider {
static var previews: some View {
ContentView()
}
}


