错误:从不兼容的types“id”分配给“CLLocationCoordinate2D”
海我试图在mkmap中显示多个注释。 当我添加坐标时,它显示错误:“从不兼容的types”id“”分配给“CLLocationCoordinate2D”。 我知道这是一个简单的概率,但我已经search了很多次,并尝试了很多,但没有工作,我的代码是,
for(int i=0 ; i<coordinates.count ; i++) { MKPointAnnotation *point = [[MKPointAnnotation alloc] init]; point.coordinate =[coordinates objectAtIndex:i]; //here it shows the error point.title = @"title"; [self.mapView addAnnotation:point]; }
善意地build议我解决这个问题。 谢谢…
由于CLLocationCoordinate2D
不是一个Objective-C对象,而是一个struct
,它不能直接存储在一个NSArray
对象中,而是必须包装在一个NSValue
对象中。
因此从数组读取坐标的代码可能是 :
CLLocationCoordinate2D coords; [[coordinates objectAtIndex:i] getValue:&coords]; point.coordinate = coords;
但是要知道,我需要看看数组是如何创build的。