Delphi APP 開發入門(十)REST Client 開發

Delphi APP 開發入門(十)REST Client 開發

tags:  行動開發  教學  App  Delphi  XE6  Android  iOS

Delphi APP 開發入門(九)拍照與分享 << 前情

Delphi在XE5開始就提供了REST Client的元件,讓開發REST Client應用的開發者能在最短的時間開發出相關的應用,今天就利用臺北市政府資料開放平台中的資料來做一個簡單的範例「台北住宿通」。

首先,我們先到臺北市政府資料開放平台來找尋我們想要的資料。找到了臺北市旅館資料庫後,我們把新版資料介接後的網址(http://data.taipei.gov.tw/opendata/apply/query/NDQxOEM2MDAtRDdGNS00NkQ2LUJCMUYtMURBMjlEQUI5MUU5?$format=json) 複製下來。
Delphi APP 開發入門(十)REST Client 開發_第1张图片接著回到Delphi,開啟新專案,我們將REST Client的幾個元件佈置上去,分別是TRESTClient、TRESTRequest、TRESTResponse與TRESTResponseDataSetAdapter。

Delphi APP 開發入門(十)REST Client 開發_第2张图片

另外為了要讓資料顯示出來,我們在畫面上新增ClientDataSet以及ListView,最後佈置畫面如下。Delphi APP 開發入門(十)REST Client 開發_第3张图片

接下來我們要設定RESTClient及RESTReponseDataSetAdapter的屬性。

RESTClient的BASEURL貼上臺北市旅館資料庫的連結網址。

Delphi APP 開發入門(十)REST Client 開發_第4张图片

RESTResponseDataSetAdapter的屬性

DataSet: ClientDataSet1

Reponse: RESTResponse1

Delphi APP 開發入門(十)REST Client 開發_第5张图片

設定完成後,在RESTRequest1按右鍵,點選Execute後,如果成功取回資料會出現OK訊息。

Delphi APP 開發入門(十)REST Client 開發_第6张图片

Delphi APP 開發入門(十)REST Client 開發_第7张图片

開啟Tools→REST Debugger工具,將URLs貼上連結後,按下Send Request。

接著點選下面的body,來看看取得的json有那些資料,往下拉之後可以看到sTitle為旅館名稱。

Delphi APP 開發入門(十)REST Client 開發_第8张图片

接下來開啟View→LiveBindings Designer

Delphi APP 開發入門(十)REST Client 開發_第9张图片

將ClientDataset中的sTitle拖拉到ListView的Item.text。就完成了!

Delphi APP 開發入門(十)REST Client 開發_第10张图片

寫到這裡看起來完成了!不過只顯示旅館名稱有點掉漆,Listview可以多顯示點東西嗎?答案是可以的!但要先安裝沒有預設安裝的元件。

在 C:\Users\Public\Documents\Embarcadero\Studio\14.0\Samples\Object Pascal\Mobile Samples\User Interface\ListView 藏有二個元件,我們先將程式存檔後,依序打開二個 .dpk的元件後,按右鍵Install安裝。

Delphi APP 開發入門(十)REST Client 開發_第11张图片

另外,別忘了在Tools→Options→Library中的Library Path加上路徑。

Delphi APP 開發入門(十)REST Client 開發_第12张图片

安裝完後,我們再開啟程式。點選ListView,開啟ItemApperarance的ItemAppearance屬性,我們看到出現了一個MultiDetailItem,點選它。

Delphi APP 開發入門(十)REST Client 開發_第13张图片

接著開啟LiveBinding Designer功能,看到多了幾個Detail,在這邊我們就把cat2(分類)、sAddr(地址)、memo_tel(電話)連結到明細裡。

Delphi APP 開發入門(十)REST Client 開發_第14张图片

這樣看起來就更專業了!接著大家可以發揮創意,結合之前教過的Google Map功能讓它顯示出來囉!

Delphi APP 開發入門(十)REST Client 開發_第15张图片

GitHub 程式下載 https://github.com/superlevin/XE6RestClientDemo

 

你可能感兴趣的:(Delphi)