#64 IBSegueAction 練習 — 心理測驗

Timmy-Luo
Aug 13, 2021

--

建立一個 Swift File

儲存 ResultViewController 要呈現的資料

建立 Cocoa Touch Class :QuestionViewController

在 QuestionViewController 裡建立 IBSegueAction

拉出來後,Type 下方選擇 Sender and Identifier

Sender 指的就是觸發 Segue 的元件,Identifier 是我們可以為每條 Segue 命名以方便辨識。

@IBSegueAction func showResult(_ coder: NSCoder, sender: UIButton, segueIdentifier: String?) -> ResultViewController? {    let controller = ResultViewController(coder: coder)    controller?.index = sender.tag    return controller}

由於觸發 Segue 的元件是 UIButton,拉出 IBSegueAction 後,可把 sender 的 Any? 改為 UIButton,這樣就可以直接使用 sender 取得 UIButton 的相關資訊。最後將11個 UIButton 的 tag 設置成 0, 1, 2, 3,..…10

建立 Cocoa Touch Class :ResultViewController

Github

--

--