[英]Swift UI TextField onCommit called when lost focus (macOS)
我在内容视图中有以下文本字段:
func doCommit(){
print("\(self.status.textValue)")
}
var body : some View {
TextField("Your input:", text: self.$status.textValue, onCommit:{
self.doCommit()
}).lineLimit(1).focusable(true, onFocusChange: { focused in
print ("\(focused) changed")
})
...
}
当文本字段获得焦点并键入 return 时,doCommit 被调用,这是我想要的,但是当我单击其他内容,然后单击文本字段并单击其他地方时,doCommit 再次被调用,并且可聚焦onFocusChange 不是调用。 我不希望在失去焦点时调用 func,但仅在返回/输入时调用
只有当您使用 Tab 键遍历不同的 UI 元素时才会调用onFocusChange
,而不是当您单击进入和离开TextField
时
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.