如何检测TextField何时在SwiftUI中处于活动状态


.onTapGesture {
// do something
}

不起作用,因为可以在不开始编辑模式的情况下点击TextFields。

答案是使用onEditingChanged参数初始化TextField。

然后,我们可以根据文本字段是经过编辑还是提交了更改来有条件地执行闭包:

TextField("", text: $email, onEditingChanged: { changed in
if changed {
// User began editing the text field
}
else {
// User tapped the return key
}
})

您是否尝试过onEditingChanged

.onEditingChanged {
//do something cool
}

你应该试试它,

onEditingChanged: { (isBegin) in
if isBegin {
print("Begins editing")
} else {
print("Finishes editing")
}
},

相关内容

最新更新