2016-06-08 10 views
-1

In einer Schleife mit json Daten neu zu ordnen den ich ein NSMutableDictionary zu schaffen und darin ich Speicherung json geparst Werte:wie ein NSMutableDictionary von 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 
} 

am Ende der Schleife gesetzt ich die jsonValues mutableDictionary in einer globalen Variablen, ein anderes NSMutableDictionary mit dem Namen nsDict.

Ich möchte mein Wörterbuch von Wörterbüchern neu anordnen, mit dem ["distance"] Wert, der in Mettern ist, so dass ich es in einem TableView von unteren Abstand zu oberen anzeigen kann. Ich habe Stackoverflowing und googlen für eine Weile, aber ich finde nur Beispiele mit dictionary.sort(), die für mich nutzlos ist, da ich ein NSMutableDictionary verwende. Konnte mit NsMutableDictionary kein Beispiel finden und die Apple Docs nicht wirklich verstehen. In einer anderen Sprache, wie PHP, hätte ich dies mit zwei do{}while tun, aber ich kann es nicht schaffen, es in Swift 2 mit den gegebenen Methoden zu tun. Kann mir jemand helfen?

Dies ist ein NSMutableDictionary von NSMutableDictionaries das ist, warum ich die Parsing-Technik denken nicht gleich wie ein NSMutableDictionary NSMutatbleDictionary

+0

Darf ich fragen, warum Sie 'NSMutableDictionary' an erster Stelle verwenden? – Alexander

+0

@AMomchilov Wenn Sie einen besseren Ansatz von dem, was ich tue, wissen, sind Sie herzlich eingeladen, es zu veröffentlichen – user3033437

+1

Ich weiß nicht, was Sie tun oder versuchen zu erreichen. 1) Von dem, was ich hier sehe, verwenden Sie keine Legacy-Frameworks, die die Verwendung von 'Foundation'-Sammlungen erfordern (' NSArray', 'NSDictionary', etc.). 2) Dies scheint für Strukturen besser geeignet zu sein, die der "Comparable" -Schnittstelle entsprechen könnten. Das würde den Vergleich zu einem Kinderspiel machen. – Alexander

Antwort

3

zu bestellen, um nicht beibehalten (sortiert oder Insertion). Du kannst es nicht sortieren.

Sie benötigen einen anderen Ansatz, z. B. die Verwendung eines NSArray sortierter Schlüssel. Siehe NSDictionary - Sorting Dictionaries.

Verwandte Themen