我一定在这里遗漏了一些东西。我已经创建了一个又一个计数器,它们都可以工作,但是在下面的代码中,计数器i
始终保持为零。计数正确显示 18。其mapDelays
想法是它将数组值i
与真或假进行比较。这是从另一种绘制机场阵列(18 个机场)的引脚的方法调用的。数组中的一项是真或假的“延迟”。所以当我绘制机场时,我想看看是否有一个继电器“真”,如果有,把针变成红色而不是绿色。是的,我是一个新手,所以任何指针都会有所帮助 - 具体来说,我显然缺少流程和逻辑!
- (MKAnnotationView*)mapView:(MKMapView *)mapView viewForAnnotation:
(id<MKAnnotation>)annotation
{
if ([annotation isKindOfClass:[AirportDetails class]]) {
static NSString *const kPinIdentifier = @"AirportDetails";
MKPinAnnotationView *view = (MKPinAnnotationView*)[mapView dequeueReusableAnnotationViewWithIdentifier:kPinIdentifier];
if (!view) {
view = [[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:kPinIdentifier];
view.canShowCallout = YES;
view.calloutOffset = CGPointMake(-5, 5);
view.animatesDrop = NO;
}
NSLog(@"I am here");
for (int i = 0; i < self.mapDelays.count; i++) {
NSLog(@"DelaysCount %i",i);
NSLog(@" %i",self.mapDelays.count);
if ([self.mapDelays[i] isEqualToString:@"true"]) {
view.pinColor = MKPinAnnotationColorRed;
view.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
return view;
} else
view.pinColor = MKPinAnnotationColorGreen;
view.rightCalloutAccessoryView = [UIButton buttonWithType:UIButtonTypeDetailDisclosure];
//}
return view;
}
}
return nil;
}