Iphone CLLocationCoordinate2D

时间:2010-12-01 15:32:24

标签: iphone objective-c ios

我是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.444coord.longitude=-3.700;

这给了我想要的东西,但我不想要这个,因为我有一个有很多纬度和经度的阵列。谁能帮我这个?当我放coord.longitude=[datos.longitude floatValue];时,它不起作用?

我正在使用Xcode 3.2.2

谢谢并原谅我英语。

3 个答案:

答案 0 :(得分:1)

问题在于我改变了价值观,我提出了错误的价值观。只有我要做的就是改变

coord.latitude =[datos.longitud doubleValue]; 
coord.longitude = [datos.latitud doubleValue]; 

感谢大家的时间。

答案 1 :(得分:0)

似乎Datos是您定义的对象,因为我在SDK中找不到它。鉴于它可能是一些不同的东西:

  • arr_datos内部没有正确的(或任何)数据
  • 可能是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]