gpt4 book ai didi

swift - SwiftUI TextField 中的货币输入

转载 作者:行者123 更新时间:2023-12-03 23:35:53 25 4
gpt4 key购买 nike

我正在尝试实现在编辑模式详细 View 中更改货币值的功能,但我正在努力获得数值工作的格式化输入。

struct JobDetailView_Edit: View {

@State var jobDetails: JobDetails

var currencyFormatter: NumberFormatter = {
let f = NumberFormatter()
f.numberStyle = .currency
return f
}()

var body: some View {
Form {

Section(header: Text("General")) {
HStack {
Text("Job Name")
Spacer()
TextField($jobDetails.jobName)
.multilineTextAlignment(.trailing)
}

TextField($jobDetails.hourlyRateBasic, formatter: currencyFormatter)

}
... other unimportant code...

数据正确传入,文本字段显示存储在 $jobDetails.hourlyRateBasic 中的格式化值,但是,我无法编辑该字段,因为如果它是一个字符串,我可以这样做。如果我尝试编辑该字段,然后在模拟器中按 Enter 键,则会收到以下错误消息:
[SwiftUI] Failure setting binding's value. The supplied formatter does not produce values of type Double. This may be resolved by ensuring the binding and the output of the formatter are of the same type.

仅供引用 $jobDetails.hourlyRateBasic 是 double 类型。

最佳答案

我创建了一个环绕 UITextfield 的组件。

你可以在这里查看 https://github.com/youjinp/SwiftUIKit

这是演示

currency text field demo

关于swift - SwiftUI TextField 中的货币输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57279026/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com