如何在 SwiftUI 中将带逗号的小数转换为小数(Point)?

How can a decimal number with a comma be converted in a decimal (Point) in SwiftUI?

插入逗号的文本字段如何格式化,以便插入的十进制值示例 10,05$ 可以转换为小数(点)10.05$?

private static let Intrest = "Intrest"
private static let Repayment = "Repayment"



var loan: Double {
    let intrest = Double (Intrest)
    let repayment = Double (Repayment)

    let Loan = Intrest + Repayment

    return Loan
}



var body: some View {
     VStack{
        HStack{
           Text ("Repayment %")
           Spacer()
           TextField("2 %", text: $Repayment)
                .keyboardType(.decimalPad)
            }
      VStack{
         HStack{
            Text ("Loan / month")
            }
            TextField("2 %", text: $Loan)
                .keyboardType(.decimalPad)
            }
}

出现此问题的唯一原因是在许多国家/地区大多使用逗号,这会破坏计算。

谢谢

您需要确保将字符串转换为带点而不是逗号的双精度数。

这个应该有帮助。

我建议您阅读 并使用带有双后备存储的自定义字符串绑定。

专门阅读那里的更新:-)

自定义字符串与后端双数绑定的完整示例用法在此处 https://gist.github.com/op183/24607b6309f7d1ea8f3aaf02d17e4ed3