NME Best Of 2019 App — storyboard 製作 App 練習
這次的作業我藉由 https://www.nme.com/ (NME) 所製作的2019年度最佳歌曲、專輯、電影排行榜來創建了一個只依靠 Stroyboard 功能,沒有參入任何自寫程式碼的iOS App。
雖然NME的年度最佳歌曲、專輯、電影榜分別各有50、50、20名,我只有各取20、 10、 10位來做功能展示足矣,再多也只是複製貼上罷了。
此 App 是依照 iPhone 11 / iPhone 11 Pro Max的解析度設計的。
模擬器操作畫面:
APP 架構說明
整個App 分為三個 Tab , Songs、Albums、Films。
Songs :
我把 Navigation Controller 用 Segue 連接到 Table View Controller 作為Root View Controller,在 Table View Controller 中插入一個 Image View 作為 Header,建立 20 個 Table view Cells 來作為排行榜。
在 Table View Cell 建立一個Button 塞滿整個Cell,再將Button 用Segue連到相對應歌曲的分頁,就可以藉由點選Cell來進入歌曲資訊。
Albums:
將Scroll view的 contentSize 設為 {4140, 725} 來塞入十個橫向捲動的滿版View。
我在 Scroll View 中的 View 裡面上面放了 Image View ,下面的Text View裹上了又一層的 Scroll View 來達到文動圖不動的效果,而代表著專輯圖片的Image View左方也放了一個按鈕來連接 Spotify 。
Films :
和 Songs Tab 相同, 也是利用了 Table View 來作為 Root View Controller,並利用 Button 塞滿 Cell ,並用Segue (Show detail) 來顯示電影資訊。
總結
這次的作業花了大概10個小時,其中排版是最花時間的,也許是我才識淺薄,但不用程式碼好像不能將 Text view 依內容文字量自動調整寬高,所以每個Text view都自己手動拉到能夠容納全部文字的大小。
其餘的內容都只是複製貼上罷了,這次的作業也讓我體認到撰寫程式來實現自動化的可貴。
實現功能:
- 搭配 tab bar controller & navigation controller。
- 使用 table view controller with static cells。
- 使用 segue 串接頁面。
- 設定 App Icon ,名稱和 App 的開頭畫面(LaunchScreen.storyboard)。
- 使用到 iOS SDK 的各種 UI 元件,比方 view,button,label,image view,text view,table view,scroll view。
- 使用到 text view,可點選文字連結顯示網頁和地圖。
- 使用 SF Symbols,另外也可從 flaticon 網站找尋精美的 App Icon 素材。
- 支援 dark mode。
- 包含左右滑動區塊的 table view
Github :
參考資料 :