【发布时间】:2019-08-10 09:32:48
【问题描述】:
(macOS 10.15 beta 和 Xcode 11 beta 5)
我正在学习的 SwiftUI 教程 (https://www.raywenderlich.com/3715234-swiftui-getting-started#toc-anchor-005) 包含以下视图:
struct ColorSliderView: View {
@Binding var value: Double
let textColor: Color
var body: some View {
HStack {
Text("0").foregroundColor(textColor)
Slider(value: $value, in: 0.0...1.0)
Text("255").foregroundColor(textColor)
}.padding()
}
}
视图与另一个视图在同一个文件中声明,并且可以作为该视图的组件进行预览。
在教程中使用它可以工作,但我后来将视图提取到它自己的文件并添加了以下预览:
#if DEBUG
struct ColorSliderView_Previews: PreviewProvider {
static var previews: some View {
return ColorSliderView(value: 0.5, textColor: .red)
}
}
#endif
这会引发错误“无法将 'Double' 类型的值转换为预期的参数类型 'Binding>'”。
问题:如何声明一个值为0.5的Binding>用于预览?
(另外:如何正确地在问题中包含尖括号(不加倍)?
【问题讨论】: