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 2011-05-05 08:44:33
接受答案,如果它帮助你 – visakh7 2011-05-05 08:45:14
使用'addAnnotation:'一次添加多个注释是没有问题的。你不必使用'addAnnotations:',在这种情况下它只是隐藏了原始的逻辑问题。这里出现的情况是,经度和纬度总是从tableData1的索引7和索引8中获得,该索引仅适用于第一个位置。所以它创建了多个注释,但都在同一个坐标上。 – Anna 2011-05-05 13:07:40