表达式类型 `String` 在没有更多上下文的情况下不明确?
Expression type `String` is ambiguous without more context?
iPad 的 Swift Playgrounds 应用程序中的以下代码给我一条错误消息:
Expression type `String` is ambiguous without more context
有谁知道为什么会这样?
提前致谢。
import SwiftUI
import Foundation
import PlaygroundSupport
struct ContentView: View {
@State private var progress: Double = 0.6
var body: some View {
VStack {
Text("test")
HStack {
Slider(value: $progress)
Text(String(format: "%.2f", progress))
}
}.border(Color.blue)
}
}
PlaygroundPage.current.setLiveView(ContentView())
您的代码没有问题...重新启动 Xcode
是的,这很奇怪。由于某些原因,iPad 上的 Swift 游乐场有所不同。
改用带说明符的字符串插值:
替换
Text(String(format: "%.2f", progress))
有
Text("\(progress, specifier: "%.2f")")
注:
如果您不希望文本跳来跳去,请使用具有单间距数字的字体,例如 Helvetica Neue。将 .font(Font.custom("Helvetica Neue", size: 20))
添加到 Text
语句的末尾。
iPad 的 Swift Playgrounds 应用程序中的以下代码给我一条错误消息:
Expression type `String` is ambiguous without more context
有谁知道为什么会这样? 提前致谢。
import SwiftUI
import Foundation
import PlaygroundSupport
struct ContentView: View {
@State private var progress: Double = 0.6
var body: some View {
VStack {
Text("test")
HStack {
Slider(value: $progress)
Text(String(format: "%.2f", progress))
}
}.border(Color.blue)
}
}
PlaygroundPage.current.setLiveView(ContentView())
您的代码没有问题...重新启动 Xcode
是的,这很奇怪。由于某些原因,iPad 上的 Swift 游乐场有所不同。
改用带说明符的字符串插值:
替换
Text(String(format: "%.2f", progress))
有
Text("\(progress, specifier: "%.2f")")
注:
如果您不希望文本跳来跳去,请使用具有单间距数字的字体,例如 Helvetica Neue。将 .font(Font.custom("Helvetica Neue", size: 20))
添加到 Text
语句的末尾。