【发布时间】:2020-01-17 12:24:55
【问题描述】:
在清除 TextField 后,我在恢复 TextField 上的占位符文本时遇到问题。
除了我在这里找到的方法之外,还有什么不那么老套的方法来恢复文本吗?
Clearing SwiftUI TextField will not restore placeholder
干杯, 奥利弗
【问题讨论】:
标签: text swiftui placeholder restore
在清除 TextField 后,我在恢复 TextField 上的占位符文本时遇到问题。
除了我在这里找到的方法之外,还有什么不那么老套的方法来恢复文本吗?
Clearing SwiftUI TextField will not restore placeholder
干杯, 奥利弗
【问题讨论】:
标签: text swiftui placeholder restore
正如我在其他主题中所写,这是当前的 SwiftUI 缺陷,所以目前只有解决方法是可能的。
这是一个对我有用的简单方法(我更喜欢这种方法,因为即使在该区域进行了一些修复/更改后它仍然有效):
@State private var text: String = ""
@State private var refresh = false
var body: some View {
VStack {
TextField("Placeholder" + (refresh ? "" : " "), text: $text)
Divider()
Button("Clear") {
self.text = ""
self.refresh.toggle() // << force refresh placeholder explicitly
}
}
}
【讨论】: