建立一個 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