swiftui - 使用 Swift UI 更新滑块值
问题描述
我正在尝试将数据从一个视图传递到另一个视图并更新滑块。
我知道您可以使用 @State 和 @Binding 属性包装器来执行此操作,但它似乎没有更新。
在我的内容视图中,我有:
@State var startNumber: Double = 0
@State var endNumber: Double = 5000
Slider(value: $startNumber, in: 0...10000, step: 0.1)
在我的第二种观点中,我有:
@Binding var startNumber: Double
@Binding var endNumber: Double
@State var number: String = ""
@State var number2: String = ""
FirstResponderTextField(text: $number2, placeholder: "\(endNumber)")
Button(action: {
startNumber = Double(number) ?? 0
endNumber = Double(number2) ?? 0
print("\(startNumber)")
print("\(number)")
print("\(endNumber)")
print("\(number2)")
self.presentationMode.wrappedValue.dismiss()
}
我可以看到该值不会更新 @Binding,因为它保持在 0。
所以我什至无法更新变量,有人知道为什么吗?
然后我了解要在内容视图上显示的值,我需要在 Hstack 之后调用 onAppear 以显示更新的值?
HStack {
}onAppear {
self.startNumber = $startNumber
}
但是,这似乎也不起作用?
解决方案
推荐阅读
- sql - 确定三角形的类型
- python - Python:如何删除字典中的符号?
- java - 在 MacOS 中使用 Java 程序执行 mysqldump
- spring - Tomcat 服务未正确重启
- java - 引起:java.lang.NoClassDefFoundError: com/amazonaws/auth/BasicAWSCredentials
- wordpress - 如何在wordpress中将html保留为html?
- reactjs - onClick 从 Header 组件调用其他组件的函数并渲染 Reactjs
- c++ - C ++:递归地将向量插入匿名向量
- scala - scala 中的 foreach() 返回一个 Seq。如何到达物品?
- java - 为什么在使用哈希图获取超时错误查找时接受哈希集解决方案 - 在具有差异 K 的数组中查找对?