我正在尝试创建然后检索 CLLocationCoordinate2D 对象的数组,但由于某种原因,该数组始终为空.
I'm trying to create then retrieve an array of CLLocationCoordinate2D objects, but for some reason the array is always empty.
我有:
NSMutableArray *currentlyDisplayedTowers;
CLLocationCoordinate2D new_coordinate = { currentTowerLocation.latitude, currentTowerLocation.longitude };
[currentlyDisplayedTowers addObject:[NSData dataWithBytes:&new_coordinate length:sizeof(new_coordinate)] ];
我也试过这个来添加数据:
I've also tried this for adding the data:
[currentlyDisplayedTowers addObject:[NSValue value:&new_coordinate withObjCType:@encode(struct CLLocationCoordinate2D)] ];
无论哪种方式,[currentlyDisplayedTowers count] 总是返回零.有什么想法可能出了什么问题?
And either way, the [currentlyDisplayedTowers count] always returns zero. Any ideas what might be going wrong?
谢谢!
要留在对象领域,您可以创建 CLLocation
的实例并将它们添加到可变数组中.
To stay in object land, you could create instances of CLLocation
and add those to the mutable array.
CLLocation *towerLocation = [[CLLocation alloc] initWithLatitude:lat longitude:lon];
[currentDisplayedTowers addObject:towerLocation];
要从 CLLocation
中取回 CLLocationCoordinate
结构,请在对象上调用 coordinate
.
To get the CLLocationCoordinate
struct back from CLLocation
, call coordinate
on the object.
CLLocationCoordinate2D coord = [[currentDisplayedTowers lastObject] coordinate];
这篇关于ClLocationCoordinate2D 的 NSMutableArray的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持跟版网!