- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个包含图像的 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/
我正在对此进行测试,如果您更改 didSet 中的值,您将不会再次调用 didSet。 var x: Int = 0 { didSet { if x == 9 { x = 10
我在玩 SwiftUI,我有一个看起来像这样的类: class Foo: ObservableObject { @Published var foo: Int! { // Implicit u
这是我在 Swift 中的第一个项目,所以请耐心等待。 punkteLimit 应初始化为值 30。每次更改 slider 值时,都应更新变量的值以及标签。 var punkteLimit: Int
我有这个代码: class Child { var data : String?; func updateData (s: String) { data = s; } } class
我有这个代码: class Bar: UIViewController { lazy var foo = Foo() foo.bar { didSet { barLabel
假设我有一个具有 3 个属性的 ExerciseSet 类:id、name、isEnabled。 我有一个这个类的对象数组: var exerciseSets: [ExerciseSet] = []
我有一个变量,当你设置和改变时我想要一个监听器,而 didSet 似乎是完美的候选者。但是,在我对它的初始测试中,第一个附加触发了 did 集,并且(在我的示例中)JS 加载到我的 webview 中
给定以下类(class), class Spaceship { var position: CGPoint! { didSet { node.posit
xcode 版本:7.3.1 大家好 我正在关注最新的 Stanford Uni iOS 类(class)。在正在创建的其中一个应用程序中,我们创建了一个具有许多属性的结构。 因为它是一个结构,所以我
我正在尝试将数据从我的 cellClass 传递到 viewController。我可以轻松地将标签文本从 cellClass 传递到 vc,但无法在 vc 中设置变量。 这是我的模型类: class
假设我有一个单例经理 class Manager { static let sharedInstance = Manager() var text: String {
假设我有一个数组: var intArray: [Int] = [1,2,3,4,5] { didSet{ //print index of value that was mo
protocol FooType { var num:Int { get set } } class Foo: FooType { var num: Int = 0 {
我们在 didSet 中使用循环时遇到了这种奇怪的行为。我们的想法是我们有一个具有树结构的数据类型,并且在每个元素中我们想要存储该项目所在的级别。因此,在 level 属性的 didSet 中,我们还
我想覆盖属性观察器并调用“super.didSet”。这可能吗? class Foo { var name: String = "" { didSet { print("name has be
我需要在不更改属性值的情况下执行 didSet 中的代码。 最近从Objective-C过来的,好像没有setMyProperty()。 所以我尝试了: self.myProperty = self.
我想知道“didSet”是否适用于数组中的元组。 我正在编写类似下面的代码,我想观察数组中元组的值。可以做那种事吗? var array :[(foo: Int, bar: Int)] = []]{
在此代码中,当文本更改时,将调用 titleEditingChanged(如预期的那样)。但是当它执行行时 investment?.title = sender.text! 它调用 Investmen
我有一个包含图像的 Collection View 。每个 Collection View 项目都有与它们关联的图像和其他数据,例如“grand_total”、“product_id”等。现在每个 C
当我在 didSet 中创建一个递归时,实际上我发现我可以只放一个 return 并且程序从 didSet 退出。但是我没有找到任何地方(我搜索了很长时间)我可以放一个返回词来退出 didSet。那么
我是一名优秀的程序员,十分优秀!