从嵌入式视图控制器执行父segue [英] Perform a parent segue from the embedded view controller
问题描述
我有这个:
-
MyTableViewController
(继承自UITableViewController
)
- 它有一个带有几个单元格的动态tableview(foo,bar, qux)
MyViewController
(继承来自 UIViewController
)
- 这个控制器有一些showsegues到其他查看控制器
- 它有一个嵌入MyTableViewController的UIContainerView
一张图片说千言万语:
当选择某个单元格时,我想执行父视图的segue( MyViewController
)
When a certain cell is selected, I want to perform a segue of the parent view (MyViewController
)
override func tableView(tableView: UITableView, didSelectRowAtIndexPath indexPath: NSIndexPath) {
if (indexPath.section == 1 && indexPath.row == 1) {
self.WHAT.performSegueWithIdentifier("someShowSegue1", sender: self)
}
}
有可能吗?我应该在«WHAT»
中使用什么?
Is it possible? what should I use in «WHAT»
?
推荐答案
在<嵌入式segue的code> prepareForSegue:在 tableViewController的新属性中设置
,我们将它命名为 viewController
parentController
。然后你只需要调用 self.parentController.performSegueWithIdentifier()
。
In the prepareForSegue:
for your embedded segue set the viewController
in a new property in your tableViewController
, let's name it parentController
. And then you'll have just to call self.parentController.performSegueWithIdentifier()
.
编辑:但首先,如果它包含嵌入视图控制器,也许您可以使用现有的 parentViewController
。
EDIT: But first of all, maybe you can use the existing parentViewController
if it contains the embedding view controller.
这篇关于从嵌入式视图控制器执行父segue的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!