'Measurement<UnitEnergy>' 类型的值没有成员 'formatted'
Value of type 'Measurement<UnitEnergy>' has no member 'formatted'
我刚刚决定要制作一个手表应用程序,并且正在尝试熟悉 Xcode 和 Swift。所以我决定按照 watchOs 教程的锻炼应用程序进行操作,该教程使用了这段代码。
Text(
Measurement(
value: 47,
unit: UnitEnergy.kilocalories
).formatted(
.measurement(
width: .abbreviated,
usage: .workout,
numberFormat: .numeric(
precision: .fractionLength(0)
)
)
)
)
然而,当我尝试使用此代码时,出现以下错误。
Value of type 'Measurement<UnitEnergy>' has no member 'formatted'
我正在使用 XCode 版本 12.5.1
感谢任何帮助!
这是需要的新方式样式 iOS 15.0, Xcode 13.0+ and watchOS 8.0+。检查 here 更多
低版本可以这样使用
struct ContentView: View {
static let var formatter: MeasurementFormatter = {
let formatter = MeasurementFormatter()
formatter.unitStyle = .long
formatter.unitOptions = .providedUnit
return formatter
}()
var body: some View {
Text("\(Measurement(value: 47, unit: UnitEnergy.kilocalories), formatter: Self.formatter)")
}
}
我刚刚决定要制作一个手表应用程序,并且正在尝试熟悉 Xcode 和 Swift。所以我决定按照 watchOs 教程的锻炼应用程序进行操作,该教程使用了这段代码。
Text(
Measurement(
value: 47,
unit: UnitEnergy.kilocalories
).formatted(
.measurement(
width: .abbreviated,
usage: .workout,
numberFormat: .numeric(
precision: .fractionLength(0)
)
)
)
)
然而,当我尝试使用此代码时,出现以下错误。
Value of type 'Measurement<UnitEnergy>' has no member 'formatted'
我正在使用 XCode 版本 12.5.1
感谢任何帮助!
这是需要的新方式样式 iOS 15.0, Xcode 13.0+ and watchOS 8.0+。检查 here 更多
低版本可以这样使用
struct ContentView: View {
static let var formatter: MeasurementFormatter = {
let formatter = MeasurementFormatter()
formatter.unitStyle = .long
formatter.unitOptions = .providedUnit
return formatter
}()
var body: some View {
Text("\(Measurement(value: 47, unit: UnitEnergy.kilocalories), formatter: Self.formatter)")
}
}