как переместить элементы в другой массив - PullRequest
0 голосов
/ 04 июля 2018
        "Session_Details": [
            {
                "Start_Time": "19:00",
                "End_Time": "19:00",
                "Time": "19:00 - 19:00",
                "Session_Name": "WELCOME DINNER",
                "Session_Id": 6,
                "Opinion_Details": [
                    {
                        "Opinion_Id": 1,
                        "Opinion_Name": "opinion 1",
                        "Opinion_Url": "www.google.com",
                        "Priority": 5,
                        "Icon": "f075"
                    },
                    {
                        "Opinion_Id": 2,
                        "Opinion_Name": "opinion 2",
                        "Opinion_Url": "www.google.com",
                        "Priority": 4,
                        "Icon": "f075"
                    }
                ],
                "Tag_Details": [
                    {
                        "Tag_Id": 1,
                        "Tag_Name": "tag 1",
                        "Tag_Color": "#000000",
                        "Tag_Order": 1
                    }
                ],
            },
               {
                "Start_Time": "10:00",
                "End_Time": "10:30",
                "Time": "10:00 - 10:30",
                "Session_Name": "MORNING BREAK",
                "Session_Id": 9,
                "Opinion_Details": [
                    {
                        "Opinion_Id": 1,
                        "Opinion_Name": "opinion 1",
                        "Opinion_Url": "www.google.com",
                        "Priority": 5,
                        "Icon": "f075"
                    }
                ],
                "Tag_Details": [
                    {
                        "Tag_Id": 1,
                        "Tag_Name": "tag 1",
                        "Tag_Color": "#000000",
                        "Tag_Order": 1
                    }
                ],
            }
          ]

Это мой массив, получаемый из бэкэнда, я передаю его в NSMutableArray, но я хочу настроить данные в другом формате, например, кроме Start_Time , End_Time , Время , оставшиеся все элементы сдвигаются в другой массив, например

"Session_Details": [ { "Start_Time": "19:00", "End_Time": "19:00", «Время»: «19:00 - 19:00», "Event_Details": [ { "Session_Name": "ДОБРО ПОЖАЛОВАТЬ УЖИН", "Session_Id": 6, "Мнение_Детали": [ { "Мнение_Ид": 1, "Opinion_Name": "мнение 1", "Opinion_Url": "www.google.com", «Приоритет»: 5, "Значок": "f075" }, { "Мнение_Ид": 2, "Opinion_Name": "мнение 2", "Opinion_Url": "www.google.com", «Приоритет»: 4, "Значок": "f075" } ], "Tag_Details": [ { "Tag_Id": 1, "Tag_Name": "tag 1", "Tag_Color": "# 000000", "Tag_Order": 1 } ], } ] } ]

** Пожалуйста, поделитесь своими предложениями и заранее спасибо **

1 Ответ

0 голосов
/ 04 июля 2018

Вы можете создать пару объектов модели:

  • Подкласс NSObject. Давайте назовем это Event.
  • EventDetails: NSObject

Event будет иметь следующие свойства:

  • startTime типа NSString или NSDate
  • endTime типа NSString или NSDate
  • time типа NSString или NSTimeInterval
  • eventDetails типа EventDetails или NSArray<EventDetails *> *

EventDetails будет иметь sessionName и т. Д. (В соответствии с содержимым массива словарей Event_Details).

Тогда вы создадите класс EventBuilder: NSObject. Было бы один метод:

  • + (Event*)buildEventFromDictionary:(NSDictionary*)dict. dict - это объект из массива "Session_Details" исходного JSON. Внутренне этот метод будет создавать новые объекты Event и EventDetails и заполнять его соответствующими полями так, как вы хотите.

Позже вы будете использовать Event объекты вместо NSDictionary. Это сделает ваш код чистым и безопасным для типов.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...