【发布时间】:2020-03-18 03:07:52
【问题描述】:
当我按下回车键或在文本域外部单击时,如何移除文本域焦点? 请注意,这是 MacOS 上的 SwiftUI。
如果我这样做:
import SwiftUI
struct ContentView: View {
@State var field1: String = "This is the Text Field View"
var body: some View {
VStack{
Button("Press") {
print("Button Pressed")
}
TextField("Fill in Text", text: Binding(
get: { print("get") ; return self.field1 },
set: { print("set") ; self.field1 = $0 }
)
)
}
}
}
然后单击文本字段并对其进行编辑,然后单击按钮文本字段不会失去焦点。如何让它退出编辑模式并失去焦点。
如果我按下 Return 键,我也想失去对 TextField 的关注。 我将绑定初始化程序与 get 和 set 一起使用,因为我认为我可以以某种方式拦截按键并检测“返回”字符,但这不起作用。
任何帮助表示赞赏:-)
【问题讨论】:
标签: focus textfield swiftui keypress