我想從服務器添加管腳並顯示它一個地圖。如何在線添加多個針腳/註釋?
通常情況下,我可以顯示引腳,但我想在線添加它。我有三個解析的json數據NAME,Longitude和Latitude。我已經解析了它的數組。我不知道如何查看地圖
CLLocationCoordinate2D annotationCoord;
annotationCoord.latitude = 40.0000;
annotationCoord.longitude = 29.000;
MKPointAnnotation *annotationPoint = [[MKPointAnnotation alloc] init];
annotationPoint.coordinate = annotationCoord;
annotationPoint.title = name;
[self.locationMap addAnnotation:annotationPoint];
我試圖在for
循環添加annotationCoord.latitude
和annotationCoord.longitude
上,但我得到這個錯誤「壞接收器類型‘CLLocationDegrees’(又名double
)」我想我我犯了很大的錯誤,但是我不知道。請需要幫助。
- (void)mapView:(MKMapView *)mapView didUpdateUserLocation:(MKUserLocation *)userLocation{
for (int i = 0; i < jsonArray.count; i++) {
NSString *lat = [jsonArray objectAtIndex:i];
[annotationCoord.latitude addObject:lat];
}
}
我的JSON回報:
response = [[NSData alloc] initWithContentsOfURL:[NSURL URLWithString:@"http://kalkatawi.com/mapLocation.php"]];
NSError *parseError = nil;
jsonArray = [NSJSONSerialization JSONObjectWithData:response options:NSJSONReadingAllowFragments error:&parseError];
jsonArray1 = [[NSMutableArray alloc] init];
jsonArray2 = [[NSMutableArray alloc] init];
jsonArray3 = [[NSMutableArray alloc] init];
for(int i=0;i<[jsonArray count];i++)
{
name = [[jsonArray objectAtIndex:i] objectForKey:@"name"];
[jsonArray1 addObject:name];
}
for(int i=0;i<[jsonArray count];i++)
{
longitude = [[jsonArray objectAtIndex:i] objectForKey:@"longitude"];
[jsonArray2 addObject:longitude];
}
for(int i=0;i<[jsonArray count];i++)
{
latitude = [[jsonArray objectAtIndex:i] objectForKey:@"latitude"];
[jsonArray3 addObject:latitude];
}
self.locationMap.delegate = self;
是否'jsonArray'只包含緯度?最好爲每個註釋返回一個帶名稱,緯度和經度的JSON數組,而不是每個屬性的單獨數組。顯示返回的JSON數據的小樣本。 – Anna
@AnnaKarenina我已經添加了我的json返回數據。如果我單獨返回每個jsonArray,這有什麼關係嗎? –