Swift Practice # 89 中央氣象局JSON解析 衛星雲圖與雷達回波
上一篇完成了能夠分類儲存金額的記帳程式,雖然問題還有很多等待解決,但大致想要出現的狀態有出現了。
這一篇則要透過嘗試解析JSON,而對象是一般大眾都很常使用到的中央氣象局資訊,生活日常穿衣出遊生活作息基本上都跟氣象脫離不了關係。這次要來嘗試解析自己拍照很常使用的衛星雲圖與雷達回波,這兩個算是在查看拍照出景機率的一個很常使用的功能。
畫面佈局:
從上面的圖片可以看到需要的元件總共為
UIImageView * 1
UISegmentController * 1
而這個紅色的兩個UISegmentController將會放到橙色一樣的地方,透過程式碼來決定顯示與否。
程式碼:
自定義Struct對應中央氣象局JSON:
在建立自定義程式碼來對應JSON前,首先要先理解JSON的狀態。
https://opendata.cwb.gov.tw/index
從上面的中央氣象局opendata來取得資料格式,可以順便註冊帳號。
從上面的JSON格式解析發現我們需要的照片URL在整個JSON第四層,所以自定義格式將遵照這樣來定義。
ViewController程式碼:
在輸入程式前先理解JSON網址的定義規則
IBOutlet與自定義字典資料對應氣象局opendata資料JSON名稱
自定義Function抓取中央氣象局圖像(API KEY已隱藏請自行申請)
其餘自定義Funtion判斷segment值決定呼叫JSON網址與Segment是否顯示
Segment IBAction-1
Segment IBAction-2
執行結果:
心得與發現:
不知道為什麼下午與氣象局對將的時候基本上圖像是segment隨改隨換,晚上就有點慢,跟上次NASA有點像,不過至少透過解析氣象局JSON資料來完成衛星雲圖與雷達回波的觀看,JSON越玩越有趣。持續加油!!!
程式碼與Github:
自定義JSON解析格式
ViewController