0

したがって、JSON オブジェクトの配列を反復処理し、MKPointAnnotations をマップに配置することになっている次のコード ブロックがあります。

for(id jsonObject in dataArray)
{
    NSLog(@"%d",[dataArray count]);

    NSDictionary* jsonDictionary = jsonObject;

    MKPointAnnotation *point = [[MKPointAnnotation alloc] init];
    NSString *lat = [jsonDictionary objectForKey:@"latitude"];
    NSString *lon = [jsonDictionary objectForKey:@"longitude"];

    point.coordinate.latitude = [lat doubleValue];
    point.coordinate.longitude = [lon doubleValue];

    [map addAnnotation:point];


}

ただし、2 行:

    point.coordinate.latitude = [lat doubleValue];
    point.coordinate.longitude = [lon doubleValue];

「式は代入できません」というエラーが表示されます。私は一生それを理解することはできません。CLLocationCoordinate2D オブジェクトを作成して割り当てようとしましたが、どちらも機能しません。

4

1 に答える 1

1

これはうまくいくはずです:

CLLocationCoordinate2d coordinate = ...
MKPointAnnotation* annotation = [[MKPointAnnotation alloc] init];
annotation.coordinate = coordinate;
[mapView addAnnotation:annotation];

コードとアプリをチェックするだけで、既存のアプリで動作します。この回答も確認してください: https://stackoverflow.com/a/15162092/1032151

于 2013-03-14T07:20:43.503 に答える