【问题标题】:JSON data divided by using segmented control使用分段控制划分的 JSON 数据
【发布时间】:2017-11-08 06:52:26
【问题描述】:

我有一些 JSON 数据。数据如下所示,我采用分段控件,其中包含活动状态和挂起状态,通过使用分段控件分离 JSON 数据。如果order_status = 0(JSON 数据下方)将存储在挂起状态,如果order_status = 1 将存储在活动状态。

我知道如何解析 JSON,但我不知道如何使用分段控件来分隔数据。

{
    "status": "done",
    "order_data": [{


        "price": "1000",
        "qty": "1",
        "total_price": "1000",
        "voucher_id": "NIL",
        "purchase_id": "1005",
        "purchase_on": "NIL",
        "validity": "30 days from the date of purchase",
        "left_day": "NIL",
        "order_status": 0
    }, {

        "price": "3000",
        "qty": "1",
        "total_price": "3000",
        "voucher_id": "NIL",
        "purchase_id": "10070",
        "purchase_on": "NIL",
        "validity": "30 days from the date of purchase",
        "left_day": "NIL",
        "order_status": 1
    }, {


        "price": "3000",
        "qty": "1",
        "total_price": "3000",
        "voucher_id": "NIL",
        "purchase_id": "1076767",
        "purchase_on": "NIL",
        "validity": "30 days from the date of purchase",
        "left_day": "NIL",
        "order_status": 1
    }]
}

【问题讨论】:

  • 创建两个不同的数组并将活动状态值存储在一个数组中,将待处理状态值存储在另一个数组中。
  • 只有订单状态=1时如何从json数据中取数据

标签: ios json swift3 uisegmentedcontrol


【解决方案1】:

假设您的数据在一个名为 jsonData 的变量中,然后首先解析 json 数据并获取两个字典数组,一个用于待处理状态数据,另一个用于活动状态数据,然后将这两个字典用于段控制。

if let orderData = jsonData["order_data"] as? [[String:Any]] {
let pendingStateData = orderData.filter({ (newOrder) -> Bool in
    return (newOrder["order_status"] as? Int) == 0
})

let activeStateData = orderData.filter({ (newOrder) -> Bool in
    return (newOrder["order_status"] as? Int) == 1
})
}

因此,使用这些过滤器可以过滤数据,并可以根据您的需要得到所需的过滤器数据。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-09-04
    • 2018-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-04-18
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多