第 9 章
使用在地搜尋 API 搜尋附近興趣點
搜尋(Search)API(也就是 MKLocalSearch
)可以讓 iOS 開發者來搜尋興趣點,並且在地圖上呈現。App 開發者可以使用這個 API 來執行位置的搜尋,可以是名字、地址、或者類型,例如咖啡或比薩。
MKLocalSearch
的用法與前面章節所談的 MKDirections
API 非常相似。你必須先建立一個 MKLocalSearchRequest
物件來綁定(bundle)你的搜尋請求。你也可以指定地圖區域範圍來縮小搜尋結果。之後你使用這個設置過的物件來初始化 MKLocalSearch
物件與執行搜尋。
搜尋是以非同步方式遠端來執行。一旦 Apple 回傳搜尋結果(如回傳一個 MKLocalSearchResponse
物件)至你的 App 時,完成處理器便會執行。通常你需要解析(parse)回應物件,並在地圖上呈現搜尋結果。
在地搜尋 App 範例
沒有比以實際範例來了解在地搜尋的更好的方式。同樣的我們不從頭來建立專案,我們以前面一章的專案來進行,另外加上了 附近(Nearby) 功能。當你按下 Nearby 按鈕,App 便會搜尋附近的餐廳,並在地圖上做定位。
你可以至http://www.appcoda.com/resources/swift59/LocalSearchStarter.zip 下載專案模板來開始, 解壓縮並打開 MapKitDirection
專案。
備註: 此起始專案跟 MapKit Direction 範例的最後專案完全相同。倘若你想了解它是如何運作的,請複習前面的章節。
本文摘自《iOS 17 App程式設計進階攻略》一書。如果你想繼續閱讀和下載完整程式碼,你可以從AppCoda網站購買完整電子版,全書範例檔皆可下載。