AddressMap 讓地址直接開啟呈現在地圖上
AddressMap |
在之前一篇 開發 Location based 的 iPhone app , MapKit 知多少 介紹了開發實務上會碰到的基本題和進階題。而其中進階題目第三題「透過使用者輸入地址查詢到該地址的座標」,這部分該怎麼做? Apple 沒有提供這樣的功能輸入地址就可以馬上查到了,所以這部分要借助別的方式。
有兩種會碰到的設計方式:
有兩種會碰到的設計方式:
- 從 Search Bar 讓使用者輸入,幫它查詢完給予地點清單,再讓使用者點選哪一個適合他的,點選後再開啟到地圖上呈現。
- 在 Table View 提供地址資訊,使用者只要點選地址就可以直接開啟在地圖上呈現。
我在 GitHub 上面開了一個 Open Source Project,叫做 Address Map。實作上是以第二個方式來呈現,但是如果挑用裡面的查詢功能,也是可以完成第一種效果。這個 Demo 程式步驟如下:
- 從 AMLocationsModel.h 跟 Google Maps API 問詢經緯度座標。
- 會將回傳的 JSON 內容轉換為需要的 Objects 叫做 AMLocationSpot.h 。
- 再將這些 Annotations 加到地圖上面。
- 透過 Zoom 的效果讓它全部的點可以清楚呈現在畫面上。
目前設計上為了使用方便,直接拿 AMMapViewController.h 來用即可,給予地址就可以直接呈現在地圖上了。這個 Project 有用到兩個外部 Libraries 分別是 asi-http-request 和 JSONKit,為了是要解決呼叫 Google API 和解析回傳 JSON 格式所需。
如何使用呢?
如何使用呢?
- 用 Git command 將這 projects 透過 clone 下載回去。
- 記得要下 git submodule init 和 git submodule update,如此一來才會將外部 libraries 建立起來。
- 參考 DemoViewController 就可以知道如何引用了。
Comments
Post a Comment