iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 26
0
Software Development

利用Swift 4開發iOS App,Daily Work List系列 第 26

Day 26. Develop Music Page But Simulator... & Segue Setting

今天原定要來開發Music的新增頁面,但就在我開發完成想要測試的時候發現....模擬器沒有辦法加入音源檔案,我不太清楚原因是什麼,但不論我嘗試了mp3、m4a...都不行,後來是在stackoverflow上看到網友分享模擬器不支援,那沒關係,我還是把畫面跟程式先寫出來,之後再去實機上測試(我用Android....需要去借),所以今天就大概說一下Music Page的內容就好(畢竟沒有測試過和完成頁面可以show),另外會補充前幾天沒講到關於Segue的東西


Music Page

按照慣例,我們先在Main.storyboard拉出Music要用的ViewController,並把相關的Outlet與Class設定好
https://ithelp.ithome.com.tw/upload/images/20181026/2011191645VhK2bLwV.png

建立MusicTableViewCell.swift給storyboard中的cell class使用

import UIKit
class MusicTableViewCell: UITableViewCell {
    @IBOutlet weak var title: UITextField!
    @IBOutlet weak var detail: UITextView!
    var id: Int64!
}

接著仿照VideoViewController.swift建立出MusicViewController.swift,其中幾個地方小小調整就好

  • type改為2
  • path改為Music/
  • 查詢資料的時候改為queryMediaByEventIdAndType、新增為insertMedia、刪除為deleteMediaById
  • cell內容只需指定id、title和detail

這樣就完成了~

Segue的設定

前面我們在開PhotoView、VedioView的時候其實都有把該Event的id指給這兩個ViewController,不然他無法知道是哪個event在做Media的增刪修,因此我們需要做幾個步驟:

  1. 在storyboard中選取我們先前設定好的Segue,替她加上identifier,photoSegue、videoSegue、musicSegue
    https://ithelp.ithome.com.tw/upload/images/20181026/20111916pHGL4SvxMr.png
  2. 到EditEventViewController.swift中加入程式碼,判斷該次轉場是哪個Segue的並設定其轉場目的地的ViewController中的id值
override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
    // popover segue
    if segue.identifier == "photoSegue" {
        let popoverViewController = segue.destination as! PhotoViewController
        popoverViewController.event_id = event_id
    } else if segue.identifier == "videoSegue" {
        let popoverViewController = segue.destination as! VideoViewController
        popoverViewController.event_id = event_id
    } else if segue.identifier == "musicSegue" {
        let popoverViewController = segue.destination as! MusicViewController
        popoverViewController.event_id = event_id
    }
}

這樣就可以順利將參數資料帶給Media的ViewController們噢!


上一篇
Daily Work List App - 25. Develop Video Page Storyboard & View Controller
下一篇
Day 27. Import Charts Library & Develop Chart Page Storyboard
系列文
利用Swift 4開發iOS App,Daily Work List31
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言