Frage

Ich brauche ein Array mit so etwas wie die folgenden erstellen:

CLLocationCoordinate2D  points[4];


    points[0] = CLLocationCoordinate2DMake(41.000512, -109.050116);

    points[1] = CLLocationCoordinate2DMake(41.002371, -102.052066);

    points[2] = CLLocationCoordinate2DMake(36.993076, -102.041981);

    points[3] = CLLocationCoordinate2DMake(36.99892, -109.045267);

Das Problem ist, ich werde nie wissen, wie viele Elemente im Array sein werden, so kann ich die Zählung angeben. Gibt es eine Möglichkeit, eine CLLocationCoordinate2D Array zu erstellen, und nur Einsatz neue Koordinaten, ohne zu wissen, was die Endsumme sein?

EDIT:. Mein Endziel ist es, die Koordinaten zu verwenden, um eine MKPolyline zu machen, die polylineWithCoordinates-Methode, die eine CLLocationCoordinate2D Array benötigt

War es hilfreich?

Lösung

// unpacking an array of NSValues into memory
CLLocationCoordinate2D *points = malloc([mutablePoints count] * sizeof(CLLocationCoordinate2D));
for(int i = 0; i < [mutablePoints count]; i++) {
    [[mutablePoints objectAtIndex:i] getValue:(points + i)];
}

MKPolyline *myPolyline = [MKPolyline polylineWithCoordinates:points count:[mutablePoints count]];
free(points);

Andere Tipps

Box sie in einem NSValue Objekt und sie in einem NSMutableArray werfen.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top