0

我在我的 iPhone 应用程序中使用地图功能。我在地图上显示用户当前位置的商店。每当用户滚动地图时,他都需要显示新位置的商店。例如。假设
纽约的用户首先应用程序将显示纽约商店,但是当他将地图滚动到德克萨斯州时,应用程序应该触发德克萨斯州位置的 Web 服务请求。我的问题是

1)如果网络服务请求在每次地图滚动时进行,应用程序可能会崩溃或每次等待新的商店集的响应。(为此我将放置一些硬编码的半径来发送请求)那么如何正确处理它。2)我想知道两个位置之间的距离,以便只有当两个位置之间的距离大于某个特定值时,我才能向服务器发送请求。

我正在使用地图视图代表来实现上述功能。请建议我一些适当的方法来处理它。

谢谢

4

1 回答 1

0

很好地找到我使用的两点之间的距离

CLLocation *location1 = [[CLLocation alloc]initWithLatitude:[[dict valueForKey:@"lat"] doubleValue] longitude:[[dict valueForKey:@"lon"]doubleValue]]; 
float distance =[mUserCurrentLocation distanceFromLocation:location1]/1000;     
float distanceinMeters=[mUserCurrentLocation distanceFromLocation:location1];       NSString *distancestr= [NSString stringWithFormat:@"%.2f KM",distance];

看看这是否可以帮助你。

于 2011-10-10T05:54:25.997 回答