2011-08-29 70 views
1

我正在爲iPhone使用Mapkit框架。我有城市名單和它的着名的地方,旅館和餐館。它正在地圖上找到城市和着名的地方。但不包括旅館和餐館。在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

您的服務請求是否爲您的列表中的任何餐館和酒店提供響應。 – iDroid

回答

1

您需要監視-didUpdateToLocation中的確切位置更改。只要[locationManager startUpdatingForLocation]正在運行,就會不斷調用更新您的當前位置。

當你使用區域監控時,你只會得到2個事件,-didEnterRegion和-didExitRegion。根據你在做什麼,區域監控可能不是這個應用程序的最佳工具。

+0

不,這不是我想要的..我找不到當前位置。我通過在地圖視圖中搜索其名稱來查找任何酒店的位置 – iProgrammer