我有一个类似下面的数组,其中包含一个名为“ OrderDetails”的数组,我认为它是字典而不是数组(我不确定该怎么称呼它。
在另一个vc中,我必须创建OrderDetails,然后将其放在dataa中。
在我必须创建OrderDetails的另一个VC中,我有一个表视图,这意味着表的数据(其中一些)应设置为数组。有人可以帮助我该如何制作该阵列?
let dataa = [ "Id":0,
"CustomrId": 111,
"PriceVariableId": item[1].priceVariableIdCore,
"PaymentTypeId":item[1].paymentVariableIdCore,
"RefCo":item[1].refcoCore,
"OrderNo":1122,
"ReciverId":0,
"DlvProvinceId":UserDefaults.standard.string(forKey: constantAddress.stateId),
"DlvCityId": UserDefaults.standard.string(forKey: constantAddress.cityId),
"DlvAddress": UserDefaults.standard.string(forKey: constantAddress.addressLine),
"DlvZip": UserDefaults.standard.string(forKey: constantAddress.postalCode),
"DlvTel": UserDefaults.standard.string(forKey: constantAddress.telephone),
"DlvMobile": UserDefaults.standard.string(forKey: constantAddress.mobile),
"TtIsSingle": TAK,
"TtIsDouble": JOFT,
"TtIsTrailer":TREILI,
"Description":EntTozihat.text,
"OrderDetails":["OrderDetailId":0 ,
"Qty":0,
"UnitPrice":600]
]
"OrderDetails":[("OrderDetailId":0 ,"Qty":0,"UnitPrice":600),(),()]
更新:
我正在创建如下的OrderDetails:
for _ in 0...item.count {
let dict = ["Id": 0,
"Qty":item[indexPath.row].quantityCore ,
"UnitPrice":item[indexPath.row].feeCore ,
"GoodId":item[indexPath.row].goodIdCore,] as [String : Any]
listArray.append(dict)
}
print("JACK= \(listArray)")
我必须在这里问题!!! 1)我正在将此权利与带有“ dequeueReusableCell”的“ cellForRowAt”一起使用,这意味着与我拥有的ro一样多,它将返回如下数据:
JACK = [[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0 ,“ Qty”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice” :0.0,“数量”:0.0],[“ ID”:0,“ GoodId”:0,“单价”:0.0,“数量”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice“:0.0,” Qty“:0.0],[” Id“:0,” GoodId“:0,” UnitPrice“:0.0,” Qty“:0.0],[” Id“:0,” GoodId“:0 ,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”:0,“ GoodId” :0,“ UnitPrice”:0.0,“数量”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”:0,“ GoodId“:0,” UnitPrice“:0.0,”数量“:0.0],[” Id“:0,” GoodId“:0,” UnitPrice“:0.0,” Qty“:0.0],[” Id“:0 ,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id” :0,“ GoodId”:0,“ UnitPrice”:0.0,“数量”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“数量”:0.0],[“ Id“:0,” GoodId“:0,” UnitPrice“:0.0,” Qty“:0.0],[” Id“:0,” GoodId“ “:0,” UnitPrice“:0.0,”数量“:0.0],[” Id“:0,” GoodId“:0,” UnitPrice“:0.0,” Qty“:0.0],[” Id“:0, “ GoodId”:0,“ UnitPrice”:0.0,“数量”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“ Qty”:0.0],[“ Id”: 0,“ GoodId”:0,“ UnitPrice”:0.0,“数量”:0.0],[“ Id”:0,“ GoodId”:0,“ UnitPrice”:0.0,“数量”:0.0],[“ Id “:0,” GoodId“:0,” UnitPrice“:0.0,” Qty“:0.0]]
您在打印4倍以上看到的print(),因为我有4行!
另一个问题2)是,我不知道为什么它在每个“ JACK =“
中都返回那么多数据首先:我需要知道如何在“ cellForRowAt”之外使用代码 第二:为什么我在“杰克”中得到这么多数据
答案 0 :(得分:1)
这样做:
let orderDetails = dataa["OrderDetails"]!
如果不确定该条目是否存在,可以安全地将其打开:
if let orderDetails = dataa["OrderDetails"] {
//use orderDetails
}
或者如果您在其余的范围内需要它:
guard let orderDetails = dataa["OrderDetails"] else {
fatalError("Couldn't unwrap the order details")
}
//use orderDetails
那样orderDetails
就是类型[String: Int]
的字典。