我有一个来自 API 的 JSON。我需要将其中的值显示为文本。
这是其中的一部分。
]
{
"d": "2019-09-20",
"v": 56.62
},
{
"d": "2019-09-23",
"v": 56.93
}
]
Run Code Online (Sandbox Code Playgroud)
现在,我为它创建了模型,称为Dolar.swift.
struct Dolar: Decodable {
var d: String?
var v: Double?
}
Run Code Online (Sandbox Code Playgroud)
还有一个名为的类WebService.swift将处理调用:
class WebService {
func getCurrency(completion: @escaping (Dolar?) -> ()) {
guard let url = URL(string: "https://api.estadisticasbcra.com/usd_of") else { return }
URLSession.shared.dataTask(with: url) { (data, response, error) in
guard let data = data, error == nil else {
return
}
let currencyResponse = try? JSONDecoder().decode(Dolar.self, …Run Code Online (Sandbox Code Playgroud) 我希望“$ 0.00”位于屏幕中间,但我不知道该怎么做。
这是我的代码:
var body: some View {
NavigationView {
ScrollView {
VStack(alignment: .center) {
Text(String(format: "$%.2f", (dolaresVM.dolares.last?.v)!))
.font(.largeTitle)
}.frame(minWidth: 0, maxWidth: .infinity, minHeight: 0, maxHeight: .infinity)
.edgesIgnoringSafeArea(.all)
}.navigationBarTitle("Test")
.onAppear(perform: self.dolaresVM.fetchDolares)
}
}
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?