我有簡單的應用程序。我的tableViews包含一些單詞;我發佈數據在後屏幕上,我想回到第一個tableView屏幕。我爲此使用了一個segue。問題在於,每次發佈後,單擊按鈕在帖子屏幕上打開新的tableView。我想回到原來的。iOS segue兩次屏幕
表視圖屏幕 - >發表屏幕 - >新建表視圖屏幕
但我想
表Vievscreen < - >發表屏幕
我有簡單的應用程序。我的tableViews包含一些單詞;我發佈數據在後屏幕上,我想回到第一個tableView屏幕。我爲此使用了一個segue。問題在於,每次發佈後,單擊按鈕在帖子屏幕上打開新的tableView。我想回到原來的。iOS segue兩次屏幕
表視圖屏幕 - >發表屏幕 - >新建表視圖屏幕
但我想
表Vievscreen < - >發表屏幕
我們需要提供什麼更多的信息。但是,這可能會讓你以正確的方式開始。
如果您使用的是導航控制器,把這個在你的帖子視圖代碼:如果您不使用navigationController而是顯示模態視圖
navigationController!.popViewControllerAnimated(true)
,然後使用您的發佈視圖代碼如下:
dismissViewControllerAnimated(true, completion: nil)
我正在使用導航控制器,現在我試過了,它在發佈數據後就像'Table View - > Table View'一樣。如果我刪除popViewController它就像是'Table View Screen - > Post Screen - > New Table View Screen' – JRdsdUY
你有2個視圖控制器,一個是tableView,另一個是一些post數據。在您的視圖控制器中發佈數據。請將您的代碼複製/粘貼到解除視圖控制器的位置。 – oyalhi
當然,但我通過右擊按鈕並創建動作segue「show」來創建segue,因此在與segue相關的代碼中沒有任何內容。 – JRdsdUY
大多數segues創建視圖控制器的新實例,並將其顯示在現有視圖控制器的頂部。
如果您正在使用推送功能將視圖控制器添加到導航堆棧,您希望按照JAL評論中的描述進行彈出操作。
如果您SEGUE是模式的,你想要做一個dismissViewController:動畫:
你也可以建立一個開卷SEGUE,雖然這可能是矯枉過正這個簡單的例子。
我有同樣的問題。現在解決了。請讓我知道這可不可以幫你。
我已經從表視圖小區聯網另一種觀點與名稱DynamicSuperView
func tableView(_tableView: UITableView, didSelectRowAt indexPath: IndexPath)
{
//Remove the below line from this function as it will perform segue.
//performSegue(withIdentifier: "DynamicSegue", sender: self)
}
override func prepare(for segue: UIStoryboardSegue, sender: AnyObject?) {
// This will actually perform your segue
var DestViewController = segue.destination as! DynamicSuperView
let selectedRow = tableView.indexPathForSelectedRow?.row
DestViewController.labelText = names[selectedRow!]
}
希望這有助於給某人一個SEGUE。
我在這裏得到了同樣的問題,但我知道,我只是做了錯誤的控制+單擊,我從細胞拖,正確的必須是實現代碼如下
我希望這有助於有人
你在尋找'self.navigationController.popViewControllerAnimated(true)'? – JAL
我覺得我的問題類似於那個:http://stackoverflow.com/questions/26337304/view-appearing-twice-when-performing-segue – JRdsdUY
使用unwind segue - http://stackoverflow.com/questions/ 36824524 /編程式定義一個新的導航控制器命令堆棧/ 36829034#36829034 – Paulw11