2011-05-05 3 views
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"); 
     } 

답변

1

당신은 주석에 대한 배열을 유지하고 도움을

[mapView addAnnotations:annotationsArray]; 
+0

ok.Thanks을 사용해야합니다. – user739509

+0

도움이 되었다면 답을 수락합니다 – visakh7

+2

'addAnnotation :'을 사용하여 한 번에 하나씩 여러 개의 주석을 추가하는 데 문제가 없습니다. 'addAnnotations :'를 사용할 필요가 없으며,이 경우에는 원래의 논리 문제를 숨 깁니다. 여기서 일어나는 일은 위도와 경도가 항상 첫 번째 위치에 대해서만 올바른 tableData1의 인덱스 7과 8에서 가져온 것입니다. 따라서 여러 주석을 작성하지만 모두 같은 좌표에 있습니다. – Anna