我是iphone的新手,我遇到了问题。
我有这段代码
for (int i=0; i<2; i++) {
Datos *datos = (Datos *)[arr_datos objectAtIndex:i];
CLLocationCoordinate2D coord;
AnnotationItem *annotationItem = [[AnnotationItem alloc] init];
coord.latitude =[datos.latitud doubleValue];
coord.longitude = [datos.longitud doubleValue];
NSLog(@"coord %f",coord.longitude);
NSLog(@"coord %f",coord.latitude);
[annotationItem setCoordinate:coord];
//[annotationItem setEstacion:estacion];
[mapView_ addAnnotation:annotationItem];
[annotationItem release];
}
它没有做任何事情的问题
但是,如果我更改coord.latitude=40.444
和coord.longitude=-3.700;
这给了我想要的东西,但我不想要这个,因为我有一个有很多纬度和经度的阵列。谁能帮我这个?当我放coord.longitude=[datos.longitude floatValue];
时,它不起作用?
我正在使用Xcode 3.2.2
谢谢并原谅我英语。
答案 0 :(得分:1)
问题在于我改变了价值观,我提出了错误的价值观。只有我要做的就是改变
coord.latitude =[datos.longitud doubleValue];
coord.longitude = [datos.latitud doubleValue];
感谢大家的时间。
答案 1 :(得分:0)
似乎Datos是您定义的对象,因为我在SDK中找不到它。鉴于它可能是一些不同的东西:
arr_datos
内部没有正确的(或任何)数据在Xcode中放置一个断点,并验证arr_datos
是否包含您认为的信息,以及datos对象是否正确存储信息。
答案 2 :(得分:0)
CLLocationCoordinate2D不是对象,因此声明如下:
CLLocationCoordinate2D coord;
顺便说一句,您应该收到有关CLLocationCoordinate2D *coord
的警告 - 您能查看编译日志吗?
[suggestion1]
NSLog(@"datos.lon %@", datos.longitud);
NSLog(@"datos.lat %@", datos.latitud);
[/ suggestion1]
[suggestion2]
另请注意,您可以使用以下内容遍历所有datos_arr:
for(Datos *datos in datos_arry) {
NSLog(.....);
}
[/ suggestion2]