swift - UIPickerView didSelectRow 之后的空变量
问题描述
我是斯威夫特的新手。
选择行后,我尝试从 WebAPI 读取一些 JSON 数据。除了一件事,一切都很好。我不知道为什么变量DaneSkladu_array
在部分之外是空的URLSession
(最后打印)。你能告诉我我做错了什么吗?
func pickerView(_ pickerView: UIPickerView, didSelectRow row: Int, inComponent component: Int) {
let WybranySklad = NrExact_array[row].prefix(6)
lbl_NumerSkladu.text = String(WybranySklad)
//self.customerPV.reloadAllComponents()
let url = URL(string: "https://...")
URLSession.shared.dataTask(with: url!) { (data, response, error) in
guard let data = data else {return}
do {
let json = try JSONDecoder().decode([CustomerData].self, from: data)
for klient in json{
self.DaneSkladu_array.append(klient.KrotkaNazwa)
if(klient.Nr_Exact == String(WybranySklad))
{
}
}
} catch let jsonError {
print ("Blad json: ", jsonError)
}
}.resume()
print(self.DaneSkladu_array.count)
}
解决方案
let json = try JSONDecoder().decode([CustomerData].self, from: data)
for klient in json{
self.DaneSkladu_array.append(klient.KrotkaNazwa)
// print(self.DaneSkladu_array.count) // place print statement here if you want to see the number of items after every new client inserted
}
print(self.DaneSkladu_array.count) // Print just the total amound of clients after inserting them all
...
推荐阅读
- javascript - 你好,我想知道如何使用 PresenceUpdate 但它每 5 分钟执行一次 - Discord.js
- c# - 集合视图在 IOS 上不显示项目,但在 Android 上有效
- tensorflow-quantum - tfq 和 ionq:ValueError:试图序列化不只使用 cirq.GridQubits 的电路
- python - 如何检查全局变量是否存在,如果不存在则将其定义为全局变量?
- anova - 创建一个循环以对多个变量的单向重复测量方差分析执行事后分析
- python - 如何从 Object-C 代码中获取 PyRun_SimpleString(s) 输出字符串?
- php - 使用复选框不同的行在数据库中插入数据
- pandas - 如何从 pandas 数据框中获取路径名并将其传递到 pd.read_csv 以使用该路径读取该文件?
- git - 无法推送到 git:无法解析 url
- c# - Outlook VSTO:获取/更新 editBox1 值