如何使用SwiftUI在文本视图中格式化小数点

237 阅读1分钟

当我们使用Slider 视图来选择一个值时,我们必须使用Double 值,这就造成了一个问题,因为当在Text 视图中显示这个值时,尽管我们使用了step 值为1,但数字34显示为34.000000 ,这意味着我们在滑块中只能选择整数值。

struct ContentView: View {
    @State private var age: Double = 0
    
    var body: some View {
        Form {
            Slider(value: $age, in: 0...100, step: 1)
            Text("\(age)")
        }
    }
}

让我们来看看如何格式化这个值以显示34

当我们在Text 视图中对age 的值进行插值时,我们可以提供一个额外的参数,称为specifier

这个参数让我们使用一个字符串格式指定器。你可以在Apple文档中查找String的可用选项。

在我们的例子中,我们可以使用$.0f

Text("\(age, specifier: "%.0f")")

看到了吗?现在我们得到20 ,而不是20.000000