2016-06-08 2 views
-1

В цикле с данными JSON Я создаю NSMutableDictionary и внутри него я хранящую JSON синтаксического анализа значение:, как изменить порядок в NSMutableDictionary из NSMutableDictionaries

for j in json { 
      var jsonValues = NSMutableDictionary() 

//Create main value 
      guard let value = j.valueForKey("value")?.valueForKey("value")! else{ 
       continue 
      } 

      //Get name 
      guard let Name : String = (value.valueForKey("Name")?.valueForKey("en") as? String) else { 
       continue 
      } 

      jsonValues["name"] = Name 

      //Get geoposition 
      guard let geoposition = value.valueForKey("geoposition") else { 
       return 
      } 

      //Get lat 
      if let lat = geoposition.valueForKey("lat") as? String { 

       jsonValues["lat"] = lat 
       let flat : Float = (lat as AnyObject).floatValue 


       //Get lng 
       if let lng = geoposition.valueForKey("lng") as? String{ 

        jsonValues["lng"] = lng 
        let flng : Float = (lng as AnyObject).floatValue 

        let metters : CLLocationDistance = getDistance(flat, flng: flng) 

        jsonValues["distance"] = floor(metters) 
       } 
      }else{} 


nsDict.setValuesForKeysWithDictionary(["\(c)" : jsonValues]) 
c += 1 
} 

в конце цикла я поставил jsonValues mutableDictionary внутри глобального var, другой NSMutableDictionary, названный nsDict.

Я хотел бы изменить порядок словарей в словарях, используя значение ["distance"], которое находится в метрах, поэтому я могу показать его в таблицеView с более низкого расстояния до верхнего. Я некоторое время занимался stackoverflowing и googling, но я нахожу только примеры с dictionary.sort(), которые бесполезны для меня, так как я использую NSMutableDictionary. Не удалось найти какой-либо пример с NsMutableDictionary и на самом деле не понимает документы Apple. На другом языке, например php, я бы сделал это с двумя do{}while Но я не могу это сделать в swift 2 с данными методами. Кто-нибудь может мне помочь?

Это NSMutableDictionary из NSMutableDictionaries именно поэтому я считаю, что метод синтаксического анализа не такой же, как заказать один NSMutableDictionary

+0

Могу ли я спросить, почему вы используете 'NSMutableDictionary' в первую очередь? – Alexander

+0

@AMomchilov, если вы знаете лучший подход к тому, что я делаю, вы можете отправить его – user3033437

+1

Я не знаю, что вы делаете или пытаетесь достичь. 1) Из того, что я вижу здесь, вы не используете устаревшие рамки, которые потребуют от вас использовать коллекции 'Foundation' (' NSArray', 'NSDictionary' и т. Д.). 2) Это похоже на то, что лучше подходит для структур, которые могут соответствовать интерфейсу 'Comparable'. Это сделало бы сравнение куском пирога. – Alexander

ответ

3

NSMutatbleDictionary не сохраняет порядок (отсортированных или вставки). Вы не можете сортировать его.

Вам нужен другой подход, например, используя отсортированные ключи NSArray. См. NSDictionary - Sorting Dictionaries.