[英]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.