在iPhone应用程序中映射视图刷新

时间:2011-10-10 05:30:24

标签: iphone objective-c mkmapview mkmapviewdelegate

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

1)如果Web服务请求在每个地图滚动中发生,则app可能会崩溃或每次等待新的商店集的响应。 (为此我要把一些硬编码半径发送请求)所以如何正确处理它。 2)我想知道两个位置之间的距离,这样我只有在2个位置之间的距离大于某个特定值时才能向服务器发送请求。

我正在使用地图视图委托来实现上述功能。请建议我一些正确的方法来处理它。

由于

1 个答案:

答案 0 :(得分:0)

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

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];

请参阅这是否可以帮助您。