gpt4 book ai didi

ios - 使用 didSet 进行通知时出现问题

转载 作者:行者123 更新时间:2023-11-30 12:01:46 26 4
gpt4 key购买 nike

我有一个包含图像的 Collection View 。每个 Collection View 项目都有与它们关联的图像和其他数据,例如“grand_total”、“product_id”等。现在每个 Collection View 项目都有一个按钮,当我单击它时,应该存储与之关联的值,例如“grand_total”等在字典数组中。

当我点击另一个 Collection View 项时,与其相关的值也将存储在字典数组中。因此,最终如果我单击 2 个 Collection View 项,与这 2 个 Collection View 项相关的所有值都将存储在字典数组中,如下所示...

[{"remaining_balance":"0.0","shipping_charges":0, "grand_total":320,"product_id”:”4”}, {"remaining_balance”:”1.0”,”shipping_charges”:200, "grand_total”:456,”product_id”:”5”}]

使用didSet可以实现这一点,有人建议我,但在这种情况下我将如何使用didSet,我无法弄清楚。我不太擅长做事,所以问这个问题......:)

最后,当我发出 API 请求时,字典数组中的所有值都将作为参数传递,如下所示...

func APICallForDetails() {
let url = "http://myapp/myUrl……”
let headers = [ "Content-Type"...

let parameters = [
"access_token": self.accessToken,
"seller_id": sellerIdvar,
“order_data”: allMyData
"user_details": myUserDetails
]
Alamofire.request(url, method: .post, parameters: Parameters, encoding: URLEncoding.httpBody, headers: headers)
.responseJSON { (response) in
if let httpResponse = response.response {
if httpResponse.statusCode == 200 {
print(“Something went wrong”)
} else if result["success"] as! Int == 1 {
print(“SUCCESS!”) }}

parameters 部分中,参数 order_data 的值为 allMyData 并且 allMyData 应包含 [{"remaining_balance":"0.0","shipping_charges":0, "grand_total":320,"product_id":"4"}]

最佳答案

假设您使用结构或类在 Collection View 中显示数据。我想你的对象结构应该看起来像这样:

struct Product {
let remainingBalance:String
let shippingCharges:Int
let grandTotal:Int
let productId:String

func toDictionary() -> [String:Any] {
return ["remaining_balance":remainingBalance, "shipping_charges":shippingCharges, "grand_total": grandTotal, "product_id":productId]
}
}

再次假设,您维护了一个对象数组,它在数组中被单击,如下所示:

var clickedProducs:[Product] = []

现在,当您准备好调用 API 时,您可以获得如下字典数组:

let arrayOfProductDict = clickedProducs.map({$0.toDictionary()})

我认为你根本不需要didSet

关于ios - 使用 didSet 进行通知时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47130351/

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