의 NSMutableDictionary을 재정렬하는 방법 : 루프의 끝에는 JSON 데이터 I는 NSMutableDictionary를 생성하고 있는데 내부 I는 JSON 파싱 값을 기억하고있어와 루프 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
}
을 i를 jsonValues 넣어 mutableDictionary는 전역 변수, 다른 NSMutableDictionary는 nsDict로 명명됩니다.
수치가있는 ["distance"]
값을 사용하여 사전을 재정렬하고 싶습니다. 따라서 저전압에서 위까지 tableView에 표시 할 수 있습니다. 나는 stackoverflowing 및 잠시 동안 인터넷 검색 했습니다만, NSMutableDictionary를 사용하기 때문에 dictionary.sort()
을 가진 예제 만 쓸모가 없습니다. NsMutableDictionary를 사용하여 예제를 찾을 수 없으며 apple 문서를 실제로 이해하지 못합니다. PHP와 같은 다른 언어에서는 두 가지 방법을 사용했습니다. do{}while
그러나 주어진 방법으로 신속하게 처리 할 수는 없습니다. 아무도 나 도와 줄 수 없어?
이
내가 순서 (분류 또는 삽입)를 유지하지 않는 한 NSMutableDictionary
처음 NSMutableDictionary를 사용하는 이유는 무엇입니까? – Alexander
@AMomchilov 만약 내가하고있는 것에 대한 더 나은 접근법을 알고 있다면 그것을 게시하는 것을 환영합니다. – user3033437
나는 당신이하고있는 일이나 성취하려고하는 것을 모른다. 1) 여기에서 볼 수 있듯이, 당신은 당신이'Foundation' 컬렉션 ('NSArray','NSDictionary', 등)을 사용해야하는 레거시 프레임 워크를 사용하지 않고 있습니다. 2) 이것은 'Comparable' 인터페이스를 준수 할 수있는 구조체에 더 적합합니다. 그러면 케이크 한 장을 비교할 수 있습니다. – Alexander