简体   繁体   English

如何获取NSDictionary数据iOS?

[英]how to get NSDictionary data iOS?

I need to show data from dictionary in UITableview 我需要在UITableview显示字典中的UITableview

ex: In tableView first row I need to show 3 key values details. 例如:在tableView第一行中,我需要显示3个键值详细信息。 In second row I need to show 24 key values details. 在第二行中,我需要显示24个键值详细信息。

This is dynamic data. 这是动态数据。 Sometimes comes 2 index or 3,4 etc.How to get data from dictionary and populate tableView with the data? 有时会出现2个索引或3,4等。如何从字典中获取数据并用数据填充tableView? Please help me doing this. 请帮我这样做。 Below is code and data in dictionary. 以下是字典中的代码和数据。

NSDictionary *dictobj=[NSJSONSerialization JSONObjectWithData:responseData options:kNilOptions error:&err];
    NSLog(@"UDashBoard Dict is:%@",dictobj);
        [
            {
                "3": {
                    "FOR HEARING": {
                        "1": {
                            "applicant": [
                                "SAO",
                                "TO ASSIST THE"
                            ],
                            "cnumber": "TO ASSISTTH",
                            "cainitialnumber": "1.",
                            "respodent": [
                                "SRI NISARUDDIN",
                                "TO ASSIST THE VENUGOPAL"
                            ],
                            "ca_id": "5346",
                            "number": "No3",
                            "sitting_time": "AT 2:15 PM",
                            "raw_text": "TO ASSIST THE SUBBA RAO\n. .",
                            "district": "GUNTUR",
                            "catype": "FOR HEARING",
                            "list": null,
                            "j_name": [
                                "SUBHASH",
                                "CHANDRAIAH",
                                "RAMAMOHANA"
                            ]
                        },
                        "2": {
                            "applicant": [
                                "MAHENDE",
                                "TO ASSIST THE SUBBA RAO\n."
                            ],
                            "canumber": "TO ASSISTTHE.",
                            "cainitialnumber": "1.",
                            "respodent": [
                                "SRI AHMED JEDDY",
                                "TO ASSIST THE VENUGOPAL"
                            ],
                            "ca_id": "5377",
                            "cnumber": "No3",
                            "sitting_time": "AT 2:15 PM",
                            "raw_text": "TO ASSIST THE REDDY",
                            "district": "GUNTUR",
                            "catype": "FOR HEARING",
                            "list": null,
                            "j_name": [
                                "REDDY",
                                "RAMAMOHANA RAO"
                            ]
                        },
                        "3": {
                            "applicant": [
                                "MAHENDER",
                                "TO ASSIST THE SUBBA RAO\n."
                            ],
                            "canumber": "TO ASSISTTHE.",
                            "cainitialnumber": "1.",
                            "respodent": [
                                "SRI NISARUDDIN JEDDY",
                                "TO ASSIST THE VENUGOPAL"
                            ],
                            "ca_id": "4924",
                            "cnumber": "No3",
                            "sitting_time": "AT 2:15 PM",
                            "raw_text": "TO ASSIST THE ...",
                            "district": "GUNTUR",
                            "catype": "FOR HEARING",
                            "list": null,
                            "j_name": [
                                "R.SUBHASH REDDY",
                                "NOOTY RAMAMOHANA RAO"
                            ]
                        }
                    }
                },
                "24": {
                    "FOR ADMISSION": {
                        "4": {
                            "applicant": [
                                "SRI KODANDARAMI",
                                "RNOTICE SENT"
                            ],
                            "canumber": "NOT YET ",
                            "cainitialnumber": "16.",
                            "respodent": [
                                "KADAPA"
                            ],
                            "ca_id": "5063",
                            "cnumber": "No24",
                            "sitting_time": "AT 10:30 AM",
                            "raw_text": "NOTICE SENT THROUGH SPEED POST",
                            "district": null,
                            "catype": "FOR ADMISSION",
                            "list": "Daily List",
                            "j_name": [
                                "PRAVEEN KUMAR",
                                "PRAVEEN"
                            ]
                        },
                        "5": {
                            "applicant": [
                                "KODANDARAMI",
                                "SENT THROUGH SPEED."
                            ],
                            "canumber": "NOT YET SERVED",
                            "cainitialnumber": "16.",
                            "respodent": [
                                "KADAPA"
                            ],
                            "ca_id": "5908",
                            "cnumber": "No24",
                            "sitting_time": "AT 10:30 AM",
                            "raw_text": "NOT YET SERVED",
                            "district": null,
                            "catype": "FOR ADMISSION",
                            "list": "Daily List",
                            "j_name": [
                                "KUMAR",
                                "PRAVEEN KUMAR"
                            ]
                        },
                        "6": {
                            "applicant": [
                                "KODANDARAMI",
                                "NOTICE SENT THROUGH"
                            ],
                            "canumber": "NOT YET SERVED",
                            "cainitialnumber": "16.",
                            "respodent": [
                                "KADAPA"
                            ],
                            "ca_id": "6229",
                            "cnumber": "No24",
                            "sitting_time": "AT 10:30 AM",
                            "raw_text": "NOT YET SERVED",
                            "district": null,
                            "catype": "FOR ADMISSION",
                            "list": "Daily List",
                            "j_name": [
                                "KUMAR",
                                "PRAVEEN KUMAR"
                            ]
                        },
                        "7": {
                            "applicant": [
                                "KODANDARAMI",
                                "NOTICE SENT THROUGH SPEED."
                            ],
                            "canumber": "NOT YET SERVED",
                            "cainitialnumber": "16.",
                            "respodent": [
                                "KADAPA"
                            ],
                            "ca_id": "5516",
                            "conumber": "No24",
                            "sitting_time": "AT 10:30 AM",
                            "raw_text": "NOT YET SERVED",
                            "district": null,
                            "catype": "FOR ADMISSION",
                            "list": "Daily List",
                            "j_name": [
                                "KUMAR",
                                "PRAVEEN KUMAR"
                            ]
                        }
                    }
                },
                "currentdate": "2015-08-07"
            }
        ]

You should use objectForKey: method of NSDictionary to get certain data. 您应该使用NSDictionary objectForKey:方法来获取某些数据。 If your keys are dynamic you can get all keys with allKeys method for NSDictionary . 如果您的密钥是动态的,则可以使用NSDictionary allKeys方法获取所有密钥。 My suggestion is create an modal object for 我的建议是为以下对象创建一个模式对象

                   "applicant": [
                            "KODANDARAMI",
                            "NOTICE SENT THROUGH SPEED."
                        ],
                        "canumber": "NOT YET SERVED",
                        "cainitialnumber": "16.",
                        "respodent": [
                            "KADAPA"
                        ],
                        "ca_id": "5516",
                        "conumber": "No24",
                        "sitting_time": "AT 10:30 AM",
                        "raw_text": "NOT YET SERVED",
                        "district": null,
                        "catype": "FOR ADMISSION",
                        "list": "Daily List",
                        "j_name": [
                            "KUMAR",
                            "PRAVEEN KUMAR"
                    ]

Load with the data using mentioned methods. 使用上述方法加载数据。 Then create an other object for all your data. 然后为您的所有数据创建另一个对象。 It could be a response object (I'm assuming you got this data from server). 它可能是一个响应对象(我假设您从服务器获取了此数据)。 Load this object with all data in dictObject again using mentioned methods. 加载此对象中的所有数据dictObject再次使用上述方法。

Now you just need to create a UITableView and load cells with using your objects. 现在,您只需要创建一个UITableView并使用对象加载单元格。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM