【发布时间】:2010-11-20 04:28:32
【问题描述】:
我想我在某处遗漏了一些明显的东西。 我有一个 (CLLocation *)lastqueriedlocation 在标头中定义为属性并合成。我想在 locationManager:didUPdateToLocation:fromLocation 中更新它:
- (void)locationManager:(CLLocationManager *)manager didUpdateToLocation:(CLLocation *)newLocation fromLocation:(CLLocation *)oldLocation{ CLLocationDistance dist = [lastQueriedLocation getDistanceFrom:newLocation]; 如果(距离> 1000){ 最后查询位置 = 新位置; [自我搜索:lastQueriedLocation]; } if ([resultArray 计数] > 0) { [自我查找AndDisplayNearestLocation:位置]; } }lastQueriedLocation 在 viewDidLoad 中分配和初始化。
问题当然是lastQueriedLocation = newLocation; 会导致EXC_BAD_ACCESS。那么持久化 lastQueriedLocation 的正确方法是什么?
如果它有助于使问题更具体 - reSearch 正在调用一个网络服务来获取位置 2 公里内的 POI - 所以我只想在我们移动 1 公里时这样做......但我仍然想保持准确度最好的,这样我就可以突出显示最近的,滚动地图等。
【问题讨论】:
标签: objective-c iphone persistence core-location