Hi,
ich hab ein ultimatives Problem und komme einfach nicht weiter
Ich hoffe mir kann irgendjemand evtl. nen Tip geben, wie ich das lösen kann, weil ich hier nun schon zwei Tage ununterbrochen am Googeln und coden bin und es irgendwie absolut nicht hinbekommen will
Es geht um folgendes.
Ich lade per JSON ein Array mit Orten und deren Lati und Longitude werten. Wenn diese geladen ist, mache ich folgende Funktion, zum ermitteln der Entfernungen.
CLLocation *firstLocation = [[CLLocation alloc] initWithLatitude:aktuelleLati longitude:aktuelleLongi];
for (int aa=0; aa<[theLocations count]; aa++) {
double lati = [[[theLocations objectAtIndex:aa] objectForKey:@"latitude"] doubleValue];
double longi = [[[theLocations objectAtIndex:aa] objectForKey:@"longitude"] doubleValue];
CLLocation *secondLocation = [[CLLocation alloc] initWithLatitude:lati longitude:longi];
CLLocationDistance distance = [secondLocation distanceFromLocation:firstLocation];
[[theLocations objectAtIndex:aa] setObject:[NSString stringWithFormat:@"%f",distance] forKey:@"distance"];
}
Ich gehe quasi alle Locations einmal durch, ermittele die Distanz zum derzeitigen Standpunkt und speichere den Wert zur Ausgabe in einem TableView in das Array mit dem Key "distance".
Dann soll im Anschluss das Tableview, bzw. die Einträge nach Entfernung sortiert werden können. Dies mache ich mit folgendem Code:
NSSortDescriptor *sortDescriptor;
sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"distance" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSArray *sortedArray;
sortedArray = [theEvents sortedArrayUsingDescriptors:sortDescriptors];
[theEvents removeAllObjects];
theEvents = [sortedArray mutableCopy];
[theTable reloadData];
Das Problem ist, er sortiert das ganze quasi so:
1
10
11
2
22
3
4
Er soll es aber natürlich so sortieren:
1
2
3
4
10
11
22
Hat evtl. irgendjemand einen Tip??
Ihr würdet mir echt absolut helfen.
Ich danke euch für jeden Tip... Evtl. könnt ihr mir ja meinen Quellcode abändern?
Hoffentlich kann mir einer Helden, ich verzweifle hier gerade total an dieser Funktion :-(
ich hab ein ultimatives Problem und komme einfach nicht weiter
Ich hoffe mir kann irgendjemand evtl. nen Tip geben, wie ich das lösen kann, weil ich hier nun schon zwei Tage ununterbrochen am Googeln und coden bin und es irgendwie absolut nicht hinbekommen will
Es geht um folgendes.
Ich lade per JSON ein Array mit Orten und deren Lati und Longitude werten. Wenn diese geladen ist, mache ich folgende Funktion, zum ermitteln der Entfernungen.
CLLocation *firstLocation = [[CLLocation alloc] initWithLatitude:aktuelleLati longitude:aktuelleLongi];
for (int aa=0; aa<[theLocations count]; aa++) {
double lati = [[[theLocations objectAtIndex:aa] objectForKey:@"latitude"] doubleValue];
double longi = [[[theLocations objectAtIndex:aa] objectForKey:@"longitude"] doubleValue];
CLLocation *secondLocation = [[CLLocation alloc] initWithLatitude:lati longitude:longi];
CLLocationDistance distance = [secondLocation distanceFromLocation:firstLocation];
[[theLocations objectAtIndex:aa] setObject:[NSString stringWithFormat:@"%f",distance] forKey:@"distance"];
}
Ich gehe quasi alle Locations einmal durch, ermittele die Distanz zum derzeitigen Standpunkt und speichere den Wert zur Ausgabe in einem TableView in das Array mit dem Key "distance".
Dann soll im Anschluss das Tableview, bzw. die Einträge nach Entfernung sortiert werden können. Dies mache ich mit folgendem Code:
NSSortDescriptor *sortDescriptor;
sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"distance" ascending:YES];
NSArray *sortDescriptors = [NSArray arrayWithObject:sortDescriptor];
NSArray *sortedArray;
sortedArray = [theEvents sortedArrayUsingDescriptors:sortDescriptors];
[theEvents removeAllObjects];
theEvents = [sortedArray mutableCopy];
[theTable reloadData];
Das Problem ist, er sortiert das ganze quasi so:
1
10
11
2
22
3
4
Er soll es aber natürlich so sortieren:
1
2
3
4
10
11
22
Hat evtl. irgendjemand einen Tip??
Ihr würdet mir echt absolut helfen.
Ich danke euch für jeden Tip... Evtl. könnt ihr mir ja meinen Quellcode abändern?
Hoffentlich kann mir einer Helden, ich verzweifle hier gerade total an dieser Funktion :-(