私は現在の場所とランダムな5つのポイントを次のように表示しようとしています:
- (void)viewDidLoad {
[super viewDidLoad];
locationManager.delegate = self;
locationManager.desiredAccuracy = kCLLocationAccuracyBest;
[locationManager startUpdatingLocation];
otherlat = [NSNumber numberWithDouble:[currentLatitude doubleValue]];
otherlong = [NSNumber numberWithDouble:[currentLongitude doubleValue]];
[self.mapView setShowsUserLocation:YES];
mapView.delegate = self;
longi = [[NSMutableArray alloc] init];
lati = [[NSMutableArray alloc] init];
NSMutableArray *la = [[NSMutableArray alloc] init];
NSMutableArray *lo = [[NSMutableArray alloc] init];
la = [NSMutableArray arrayWithObjects:@"20", @"21", @"42", @"51", @"75", nil];
lo = [NSMutableArray arrayWithObjects:@"60", @"21", @"82", @"181", @"35", nil];
for (int x = 0; x < [la count]; x++) {
otherlat = [NSNumber numberWithDouble:[[la objectAtIndex:x] doubleValue]];
otherlong = [NSNumber numberWithDouble:[[lo objectAtIndex:x] doubleValue]];
[longi addObject:otherlong];
[lati addObject:otherlat];
}
myAnnotation *myAnnotation1 = [[myAnnotation alloc] init];
for (int y = 0; y < [lati count]; y++) {
CLLocationCoordinate2D theCoordinate;
theCoordinate.latitude = [[lati objectAtIndex:y] doubleValue];
theCoordinate.longitude = [[longi objectAtIndex:y] doubleValue];
myAnnotation1.coordinate = theCoordinate;
[mapView addAnnotation:myAnnotation1];
}
}
- (MKAnnotationView *)mapView:(MKMapView *)theMapView viewForAnnotation:(id <MKAnnotation>)annotation {
if ([annotation isKindOfClass:[MKUserLocation class]])
return nil;
static NSString *myAnnotationIdentifier = @"AnnotationIdentifier";
MKPinAnnotationView *customPinView = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:myAnnotationIdentifier];
customPinView.image = [UIImage imageNamed:@"purplepin.png"];
customPinView.animatesDrop = YES;
customPinView.canShowCallout = YES;
return customPinView;
}
ただし、マップビューには現在の場所のみが表示され、他の 5 つの場所は表示されません。他の 5 つの場所が表示されない理由がわかりません。
[mapView addAnnotation:myAnnotation1];