我有简单的应用程序。我的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