我正在使用Mapkit FrameWork for iPhone。我有城市名单及其着名的地方,酒店和餐馆。它是在地图上找到城市和着名的地方。但不是酒店和餐馆。
这是我的代码:
- (CLLocationCoordinate2D) addressLocation {
NSString *strRequest; double latitude = 0, longitude = 0;
CLLocationCoordinate2D center;
NSString *strAddress = [searchLocationField.text stringByAddingPercentEscapesUsingEncoding:NSUTF8StringEncoding];
NSLog(@"Search String:%@",searchLocationField.text);
strRequest = [NSString stringWithFormat:@"http://maps.google.com/maps/geo?q=%@&output=csv", strAddress];
NSString *strNewResult = [NSString stringWithContentsOfURL:[NSURL URLWithString:strRequest] encoding:NSUTF8StringEncoding error:NULL];
NSLog(@"StrRequest :- '%@'",strNewResult);
NSArray *listItems = [strNewResult componentsSeparatedByString:@","];
if([listItems count] == 4)
{
latitude = [[listItems objectAtIndex:2] doubleValue];
longitude = [[listItems objectAtIndex:3] doubleValue];
}
else
{
UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@"Warning"
message:@"Could Not Find Address"
delegate:nil
cancelButtonTitle:@"ok"
otherButtonTitles:nil];
[alert show];
[alert release];
}
center.latitude = latitude;
center.longitude = longitude;
MKCoordinateRegion region = MKCoordinateRegionMakeWithDistance(center, 1000, 1000);
MKCoordinateRegion adjustRegion = [mapView regionThatFits:region];
[mapView setRegion:adjustRegion animated:YES];
return center;
}
有没有办法找到完全位置?
答案 0 :(得分:1)
您需要在-didUpdateToLocation中监控确切的位置更改。只要[locationManager startUpdatingForLocation]正在运行,就会不断调用更新当前位置。
当您使用区域监控时,您只会获得2个事件,-didEnterRegion和-didExitRegion。根据您的工作情况,区域监控可能不是此应用程序的最佳工具。