200 개가 넘는 개체가있는 배열이 있는데 각 개체를 통해 루프를 수행하려고합니다.다른 핀 색상의지도보기 주석
각 개체에는 예/아니요 필드가 있으며 그 예/아니요 값에 따라 다른 색의 표식을 표시하고 싶습니다.
내가 볼 수있는 것은 내 루프가 각 객체를 먼저 통과 한 다음 모든 객체의 끝에 모든 주석이 추가된다는 것입니다.
모든 주석을 내 맵에 추가 할 때 yes no 값의 배열을 통해 루프를 검사하므로 패턴이 배치 될 때 어레이의 마지막 객체에서 yes/no 값을 사용합니다 모든.
각 요소의 예/아니요 값에 따라 마커가 달라 지도록하려면 어떻게해야합니까?
- (MKAnnotationView *) mapView:(MKMapView *)mapView viewForAnnotation:(id <MKAnnotation>) annotation{
MKPinAnnotationView *annView=[[MKPinAnnotationView alloc] initWithAnnotation:annotation reuseIdentifier:@"currentloc"];
if(current_yesno == YES){
annView.pinColor = MKPinAnnotationColorGreen;
}
else
{
annView.pinColor = MKPinAnnotationColorRed;
}
annView.animatesDrop=NO;
annView.canShowCallout = YES;
annView.calloutOffset = CGPointMake(-5, 5);
return annView;
}
및 current_yesno
가 내 .H 파일에 선언 다음과 같이
내 코드 내 주석 코드
for (i = 0; i < [appDelegate.itemArray count]; i++) {
item_details *tempObj = [appDelegate.itemArray objectAtIndex:i];
location.latitude = [tempObj.lat floatValue];
location.longitude = [tempObj.lon floatValue];
current_yesno = tempObj.yesno;
MapViewAnnotation *newAnnotation = [[MapViewAnnotation alloc]initWithTitle:tempObj.name andCoordinate:location];
[self.mapView addAnnotation:newAnnotation];
[newAnnotation release];
}
입니다.
감사합니다. 어떻게하면 yesno 속성에 MapViewAnnotation을 추가 할 수 있습니까? – user1096447
MapViewAnnotation.h에서 MapViewAnnotation.m에'@property (nonatomic, assign) BOOL yesno;'를 넣고'@synthesize yesno; '를 입력하십시오 – Anna
감사합니다 안나, 관련 답변을 추가하십시오. –