2
내 주석에 여러 주석을 추가 할 수 없습니다. 하나만 추가합니다. 여기 내 코드가 있습니다. 감사.Mapkit 다중 주석
const char *sql1=[final1 UTF8String];
sqlite3_stmt *statement1;
if(sqlite3_prepare_v2(database,sql1,-1,&statement1,NULL)==SQLITE_OK)
{
tableData1=[[NSMutableArray alloc] init];
while (sqlite3_step(statement1) == SQLITE_ROW)
{
l++;
NSLog(@"numar de lapuri%d",l);
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 0)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 1)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 2)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 3)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 4)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 5)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 6)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 7)]];
[tableData1 addObject:[NSString stringWithFormat:@"%s",(char*)sqlite3_column_text(statement1, 8)]];
NSString* laplat=[tableData1 objectAtIndex:7];
NSString* longlat=[tableData1 objectAtIndex:8];
NSLog(@"lap lat:%@",laplat);
NSLog(@"lap lat:%@",longlat);
lapcoord.latitude=[laplat doubleValue];
lapcoord.longitude=[longlat doubleValue];
annotation=[[AnnotationDelegate alloc] initWithCoordinate:lapcoord];
[mapView addAnnotation:annotation];
[annotation release];
NSLog(@"added");
}
NSLog(@"Works lap");
}
ok.Thanks을 사용해야합니다. – user739509
도움이 되었다면 답을 수락합니다 – visakh7
'addAnnotation :'을 사용하여 한 번에 하나씩 여러 개의 주석을 추가하는 데 문제가 없습니다. 'addAnnotations :'를 사용할 필요가 없으며,이 경우에는 원래의 논리 문제를 숨 깁니다. 여기서 일어나는 일은 위도와 경도가 항상 첫 번째 위치에 대해서만 올바른 tableData1의 인덱스 7과 8에서 가져온 것입니다. 따라서 여러 주석을 작성하지만 모두 같은 좌표에 있습니다. – Anna