在SwiftUI中,如果使用Binding对象将状态绑定到TextField,则只要该Binding对象未取消,则不允许更改状态。解决此问题的方法是使用State对象。 在下面的示例中,我们使用一个State对象来跟踪TextField中的文本,并使用一个对象绑定来使其与外部状态同步。
struct ContentView: View {
@State private var text: String = "Hello World!"
var body: some View {
VStack {
TextField("Enter text", text: $text)
.padding()
Text("Input: \(text)")
}
}
}
在此示例中,我们将文本绑定到@ State对象,因此它可以与外部状态保持同步。 当用户更改文本时,我们可以自由更新该状态,并且TextField也会反映出最新的值。
上一篇:绑定到TextBox的只读变量
下一篇:绑定到同一端口的UDP套接字