【问题标题】:How to restore placeholder text when TextField is cleared清除 TextField 时如何恢复占位符文本
【发布时间】:2020-01-17 12:24:55
【问题描述】:

在清除 TextField 后,我在恢复 TextField 上的占位符文本时遇到问题。

除了我在这里找到的方法之外,还有什么不那么老套的方法来恢复文本吗?

Clearing SwiftUI TextField will not restore placeholder

干杯, 奥利弗

【问题讨论】:

    标签: text swiftui placeholder restore


    【解决方案1】:

    正如我在其他主题中所写,这是当前的 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
            }
        }
    }
    

    【讨论】:

      猜你喜欢
      • 2020-04-20
      • 2019-09-21
      • 2012-01-21
      • 2020-01-05
      • 2019-12-19
      • 2012-03-27
      • 2020-03-27
      • 1970-01-01
      • 2014-07-13
      相关资源
      最近更新 更多