使用 IBOutlet 和 IBAction 創作有趣的 App — 計算卡路里與推薦食物

林怡萱
海大 SwiftUI iOS / Flutter App 程式設計
4 min readApr 15, 2019

(1) App 操作的動畫影片 gif

(2) GitHub 連結

(3) 特製的 App 畫面截圖

計算大卡的畫面

背景用漸層的,非常漂亮!!只要輸入你的身高體重,選擇符合你的選項,就會幫你算出你的BMR&TDEE囉! 背景的小插圖是用到UIBezierPath去完成的,幫忙切割成圓形,讓這些小插圖像泡泡的感覺~~

(BTW, 上面的身高體重當然不是我的~~)

不知道自己幾歲?我來幫你算!

因為要使用到date picker功能又不太知道怎麼與此主題結合,於是想到了貼心的功能!不確定自己幾歲的話,只要選擇你的出生年月日,就可以自動幫你算好囉~

隨機為你出餐!

為了運用到隨機功能,又要與卡路里有關的話,當然就是為你推薦今日菜單~保證健康營養!!

(4) 文字說明 ,比方遇到的特別問題和解決的方法

我覺得最大的問題,大概就是要如何把這些功能結合在一起,主題想了很久,最後的功能也盡量用的不會很刻意了!另外一個困難點就是要如何為我的APP排版,我的美術天分不是很好,這一部份我也是想了超級久的QQ

(5) 重點程式碼講解

  1. 漸層背景

運用到老師上課教過的技巧,讓背景變成漸層的,而不是單一顏色!

2.日期的字串切割

因為如果直接取出來的話它是一段字串,所以上網學習了字串切割的方法,把年月日分別記下,以利之後的計算。

3.亂數功能

此張是早餐的部分,午餐晚餐也是差不多形式的code,運用老師所教的亂數功能來推薦菜單!

4.利用 UIBezierPath 設計特別形狀的圖片

我是割成圓形,跟背景融合比較適合。

5.收鍵盤

(6)心得

這是這堂課的第二次作業,每一次作業都讓我更加熟悉使用swift做App,每次得知有作業的時候,雖然會覺得好討厭,又要做作業了QQ,但是每次做得當中都覺得很有趣,而且會一直想自己多加功能上去,但是有點可惜的是還是有其他的科目要顧,沒辦法一直隨心所欲的加功能,不然耗費的時間肯定會非常可觀XD,製作App真是會讓人越做越上癮啊~~~

--

--