💬
[SwiftUI]キーボードのreturnキーを変える方法
UITextFieldにはreturnキーを変えるreturnKeyTypeがあります。
SwiftUIではこれに相当するものがない(iOS14時点)ため、裏側で使われているUITextFieldで設定する方法を書きます。
方法
下記のappearanceを使います。
UITextField.appearance().returnKeyType = .done
この方法は設定が簡単ですが、全体のTextFieldが変更されてしまうので注意が必要です。
実装
実際に使う場合は
struct ContentView: View {
.....
.onAppear(perform: {
DispatchQueue.main.async {
UITextField.appearance().returnKeyType = .done
}
})
.....
}
-
onAppearに記載することで、その画面を開いたときに見た目を変えます。 -
DispatchQueue.main.asyncを使います。使わないとクラッシュしますが詳しい原因は調べていません。
参考
別な方法
Discussion
最近は
submitLabel()でできるようですね。