どうも、ちょげ(@chogetarou)です。
コードでTextEditorのキーボードを表示する方法を紹介します。
方法

TextEditorのキーボードを表示するには、@FocusStateとfocused修飾子を使います。
まず、Bool型の@FocusStaeを用意します。
@FocusState private var focusedField: Bool
次に、TextEditorにfocused修飾子を付与し、引数に用意した変数の参照を指定します。
TextEditor(text: $text)
.focused($focusedField)
後は、フォーカスを合わせたい時に変数の値を「true」にします。
self.focusedField = true
変数が「true」になることで、TextEditorのキーボードが表示されます。
使用例
struct ContentView: View {
@State var text = ""
@FocusState private var focusedField: Bool
var body: some View {
VStack {
TextEditor(text: $text)
.frame(width: 300, height: 200)
.border(Color.blue)
.focused($focusedField)
Button("Show Keyboard") {
focusedField = true
}
}
}
}
コメント