我希望从已经嵌入导航控制器的视图控制器以模态方式呈现视图控制器,然后当用户按下完成按钮模态视图时,应该关闭并显示视图控制器。
以模态方式呈现视图控制器,我使用代码执行此操作:
@IBAction func openCardPreferences(sender: AnyObject) {
let newVC = UIStoryboard(name: "Main", bundle: NSBundle.mainBundle()).instantiateViewControllerWithIdentifier("common") as CommonCardParametrsViewController
self.presentViewController(newVC, animated: true, completion: {
})
}
但解雇模态视图控制器将我带回导航的控制器根视图控制器,而不是#34;呈现视图控制器"
@IBAction func applyChanges() {
println(self.presentingViewController)
// self.delegate?.doneButtonPressed?()
self.dismissViewControllerAnimated(true, completion: {})
}
正如您可能看到我尝试使用委托方法解除控制器,但这并不能解决我的问题。
有趣的是,日志self.presentingViewController
返回UINavigation controller
个实例。
我不明白发生了什么。 我做错了什么?
答案 0 :(得分:0)
我将setViewControllers
子类中的方法UINavigationController
从viewWillAppear
移到viewDidLoad
,这解决了我的问题。