00657106_HW03_app_我的晚餐
半夜請勿觀看,不然要變胖了!!
(1)App 操作的 gif
- 支援 dark mode & light mode
(2)GitHub 連結:https://github.com/00657106-ios/00657106_HW03
(3) 特製的 App 畫面截圖:
1.app Icon以及主畫面:主畫面包含所有的餐廳選項,是所有我最常去吃的餐廳並且認為很好吃的。
2.依照餐廳選項不同顯示出我分別在以下餐廳點選什麼餐點食用,並且認為很好吃的。
3.在吃飯的同時也不忘營養均衡以及把最喜歡吃的東西放在app裡面,並且讓他有動畫的功能來顯示我非常喜歡吃薯條,如果點選每天一定要吃的時候會跑出蔬菜來提醒要營養均衡,如果點今天不想吃,蔬菜就會很難過地消失嚕。
4.分別把店家的地圖位置標示出來,如果之後有人看到這個app之後想去吃吃看可以依照地圖位置去嘗試,店家的食品價格都不會很貴而且都還吃得蠻飽的,個人是蠻推薦各位去嘗試上面有提到的餐點。
5.iPad & Mac & app & iPhone截圖
(4) 文字說明:在設定圖片讓他可以分頁瀏覽的時候,依照老師教的方使操作卻沒有辦法顯示出圖片,原因出在圖片檔名在命名的時候不小心沒注意到是全型,原本以為我的程式碼有寫錯,在老師的觀察之後才發現這個問題並加以改正,大部分要求的程式碼都可以按照老師給的範例來依序做出來,只是需要花時間去理解該怎麼使用才能達到預期的畫面。
(5) 重點程式碼講解:
動畫效果的部分在ContentView.swift檔案之第88行到第119行有寫到,如果是app模擬器畫面的話則是在Favorite選項點選進入後,點選文字即可產生動畫效果,上面的蔬菜是點選文字後會顯示圖片以及消失圖片,下面的薯條則是會旋轉三次。
(6)封面圖片,有晚餐的意味。
(7)功能需求:(其他地方也有做到,只取其中一項當代表)
- 使用 TabView 製作下面有 tab bar 的分頁
- 使用 SF Symbol
ContentView.swift第43行
- 使用 NavigationView & NavigationLink 切換頁面 & 傳資料到下一頁,navigation bar 上要顯示標題
ContentView.swift第18~26行
- 利用 PageTabViewStyle 實現分頁瀏覽
QuanHongView.swift第24~44行
- 使用到酷炫動畫
- 利用 transition 設定動畫效果
ContentView.swift第88~123行
- 資料存在 array 裡,array 成員的型別是 struct 定義的自訂型別
- 生成 List 時搭配 id 或 Identifiable
BafangYunjiView.swift第8~43行
- 使用 List 製作表格,至少一個頁面的 List 用到 Section 分類表格
ContentView.swift第45~86行
- 打開連結的 Link 按鈕
ContentView.swift第126~156行
- 多行捲動文字的 TextEditor
BraisedDishView.swift第8~29行
- 支援 dark mode & light mode: GIF有展示
- 支援 iPhone & iPad:上面第五點有截圖畫面
- 使用到以下連結的部分方法調整元件位置
NoodleShopView.swift第8~24行
- 使用格子狀排列的 LazyVGrid 實現照片牆
BraisedDishView.swift第31~62行
- 上下捲動的 List 裡有水平捲動的 ScrollView & LazyHGrid
NoodleShopView.swift第26~65行
- 設定 App Icon & 名稱
- 利用 extract subview 將 view 模組化
BafangYunjiView.swift第45~73行
- 利用 mask 或 clipShape 將圖片裁切特別的形狀
ContentView.swift第112行