今年最受歡迎的電影之三

從TMDB搜尋Top 20電影排行

--

https://www.themoviedb.org/about/logos-attribution

前情提要:

我本來要做點選cell後播放預告片,後來決定要做完整一點,打算做這些功能:

  1. 點選cell後進入電影介紹及播放預告片
  2. 可加入我的最愛
  3. 可加入待看電影清單

今天完成了第一項,先來記錄一下。

點選cell後進入電影介紹

新增DetilViewController,並從movieforcell拉segue至DetilViewController。

因為兩個controller彼此不認識,必須用segue來連接。

https://matteomanferdini.com/how-ios-view-controllers-communicate-with-each-other/

使用prepare(for:sender:)方法,將資料儲存在property後經由show segue傳資料到下一頁。

在電影推薦排行tableView的SecondMovieTableViewController加入prepare方法,將點選那行的cell資料傳到下一頁。

SecondMovieTableViewController裡的 prepare function

傳送以下資料到下一頁:

電影名稱、評分、發布日期、海報、電影id、電影介紹

為了確認資料有傳到下一頁,我在第二頁的DetilViewController先寫了一個function印出所點選的電影id。

蜘蛛人電影的Id

確認後再繼續進行載入電影海報、電影名稱、電影簡介。

getSelectInfo()載入電影資料

點選cell後將資料傳到下一頁,顯示該cell的海報、名稱、簡介。

播放預告片

在上一篇文章提到如何取得預告片URL之後就來實作囉!

先取得預告片的key:

透過getTrailerKey()取得該片的key

取得的key會存在這裡:

建立Button,按下Button後透過present SFSafariViewController開啟YouTube播放預告片(記得要import SafariServices)。

取得預告片的URL:

按下button開啟safari

成功囉!

蜘蛛人預告片
Cars預告片

我的最愛清單…下集待續…

GitHub:

如果有值得大家參考的地方再麻煩大家幫我拍拍手喲,謝謝大家耐心閱讀🙇‍♀️

--

--

Julia Wang
彼得潘的 Swift iOS / Flutter App 開發教室

Learning Programming , Hiking , Travels , Tour , Exploring nature 『你必須要很努力,才能看起來毫不費力』