我有一个NSViewController
,我们将其命名为SecondViewController
(由前一个NSViewController
调用,名为FirstViewController
,作为模式窗口,带有segue)使用show segue调用名为NSViewController
的其他ThirdViewContoller
(所有segues以编程方式执行:self.performSegueWithIdentifier("nameOfSegue", sender: self)
。在SecondViewController
时我编写此代码:
self.dismissController(SecondViewContoller)
self.performSegueWithIdentifier("startGame", sender: self)
一切正常,但我需要在SecondViewController
中使用此代码重新打开ThirdViewController
(使用模态segue):
self.dismissController(ThirdViewController)
self.performSegueWithIdentifier("changeHardness", sender: self)
ThirdViewController
永远不会被驳回。
顺便说一句,如果我尝试用模态segue打开ThirdViewController
,它会崩溃,然后给出:
2015-03-31 11:24:19.429 MiniGames Ultra [8074:522218] ***断言 失败 - [Project.SecondViewController presentViewController:动画:], /SourceCache/AppKit/AppKit-1344.72/Controllers/NSViewController.m:803 2015-03-31 11:24:19.429项目[8074:522218] presentViewController:animator :: View''的视图不在窗口/视图层次结构中。 2015年3月31日 11:24:19.431 MiniGames Ultra [8074:522218](......等)