テキストフィールド
CoddyのSwiftジャーニー「SwiftUI入門」セクションの一部。レッスン 24/50。
TextFieldを使うと、ユーザーは入力できます。プレースホルダーとString状態へのバインディングが必要です:
@State private var name = ""
var body: some View {
VStack {
TextField("Your name", text: $name)
Text("Hello, \(name)!")
}
}$name の $ は状態をバインディング、つまり双方向の接続に変えます。フィールドには name の値が表示され、ユーザーが入力するキーのたびに、その値が書き戻されます。下のテキストも同じ状態を読み取るため、キー入力のたびに更新されます。
.textFieldStyle(.roundedBorder)は、フィールドの周囲におなじみの角丸ボックスを描画します。
チャレンジ
簡単ユーザーを名前で挨拶します。プレースホルダーが Your name で、name にバインドされた TextField を追加し、識別子 name を付けます。ユーザーが Ada と入力した後に Hello, Ada! と表示される挨拶文を維持します。
自分で試してみよう
import SwiftUI
@main
struct CoddyApp: App {
var body: some Scene {
WindowGroup {
ContentView()
}
}
}このレッスンには短いクイズがあります。レッスンを始めて解答し、進捗を記録しましょう。
SwiftUI入門のすべてのレッスン
自分で練習してみよう: Swiftプレイグラウンド