看板 KnucklesNote
作者 標題 [Xcode][Swift3] 使用 Unwind 跳至之前任一個 ViewController
時間 2017-05-06 Sat. 00:56:25
例如從文章列表頁 → 閱讀文章頁 → 編輯文章頁
TextListViewController → TextViewController → EditorViewController
如果是使用「回覆文章」,希望能在編輯文章頁點了「發佈文章」後,
不要回到閱讀文章頁,而是直接跳回文章列表頁,並執行 refresh() 重整資料
先在 TextListViewController 加上一個 @IBAction unwindToTextList
@IBAction func unwindToTextList(segue: UIStoryboardSegue) {
refresh(self)
}
裡面可以加上跳回來時要執行的程式refresh(self)
}
例如使用 refresh() 重整文章列表,讓新的文章顯示出來
在編輯文章頁,按著 Ctrl 將 Button 或 Controller 拉至 Exit
跳出的選單選「unwindToTextListWithSegue:」
會產生一個 Unwind segue
因為這邊沒有 Button 可以拉,所以使用 Controller 拉
之後再用程式執行換頁
使用 Controller 拉 Segue 的話,會出現警告
要求 Segue 必需加上 Identifier
點一下剛剛產生的 Unwind segue
輸入 Identifier 為「UnwindToTextList」
修改 EditorViewController.swift
在回覆文章完成後,執行
self.performSegue(withIdentifier: "UnwindToTextList", sender: self)
即可直接跳至文章列表頁,並執行文章列表頁的 @IBAction unwindToTextList()參考
StackOverflow What are Unwind segues for and how do you use them?
--
※ 作者: Knuckles 時間: 2017-05-06 00:56:25
※ 編輯: Knuckles 時間: 2017-05-06 19:46:42
※ 看板: KnucklesNote 文章推薦值: 0 目前人氣: 0 累積人氣: 365
回列表(←)
分享