只要會走路的人都需要地圖,而iOS6開始有內建可以呼叫地圖服務來導航 (Call Map Service to Navigation),它會幫我們規劃幾條可行的路線,我們就可以選擇適合的路線從起點到目的地囉~
在此展示從師大分部到臺北101的導航~
只要幾個簡單的步驟,就可以成功呼叫地圖服務來導航 (Call Map Service to Navigation)。
- 根據台北101座標設定一個大頭針標示
- 設定大頭針上的標籤資訊
- 根據師大分部座標設定一個大頭針標示
- 設定大頭針上的標籤資訊
- 決定起終點:師大分部為起點,台北101為終點
- 設定導航模式是行車還是走路
- 開啓內建的地圖
/** Theme: Call Map Service to Navigation IDE: Xcode 6 Language: Objective C Date: 103/11/02 Author: HappyMan Blog: https://cg2010studio.wordpress.com/ */ - (void)viewDidLoad { [super viewDidLoad]; // 取得現在所在位置 // MKMapItem *currentLocation = [MKMapItem mapItemForCurrentLocation]; // 取得台北101所在位置 // 根據台北101座標設定一個大頭針標示 MKPlacemark *markTaipei101 = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(25.0335, 121.5651) addressDictionary:nil]; MKMapItem *taipei101 = [[MKMapItem alloc] initWithPlacemark:markTaipei101]; // 設定大頭針上的標籤資訊 taipei101.name = @"台北101"; taipei101.phoneNumber = @"0977123456"; // 取得師大分部所在位置 // 根據師大分部座標設定一個大頭針標示 MKPlacemark *markSchool = [[MKPlacemark alloc] initWithCoordinate:CLLocationCoordinate2DMake(25.0084083, 121.535736) addressDictionary:nil]; MKMapItem *school = [[MKMapItem alloc] initWithPlacemark:markSchool]; // 設定大頭針上的標籤資訊 school.name = @"師大分部"; school.phoneNumber = @"0933123456"; // 決定現在所在位置是起點還是終點 // 這樣的設定是:師大分部為起點,台北101為終點 NSArray *array = [[NSArray alloc] initWithObjects:school, taipei101, nil]; // 設定導航模式是行車還是走路 NSDictionary *param = [NSDictionary dictionaryWithObject:MKLaunchOptionsDirectionsModeDriving forKey:MKLaunchOptionsDirectionsModeKey]; // 開啓內建的地圖 [MKMapItem openMapsWithItems:array launchOptions:param]; }
參考:iOS7程式設計實戰 – 呼叫地圖服務來導航。
Comments on: "[iOS] 呼叫地圖服務來導航 (Call Map Service to Navigation)" (1)
[…] Map顯示地點後,我們也不想要呼叫內建Apple Map導航,因為iOS 6後Apple棄用它,這時候想要報復就來使用Google […]
讚讚