使用按钮弹出后,xcode导航栏不再可见

时间:2015-06-13 16:49:44

标签: ios iphone xcode uinavigationbar popover

我在iphone视图中创建了一个popover,里面有一个按钮,可以转到另一个ViewController。 但是popOver之后的所有Viewcontroller都不再具有导航栏了。

我的项目结构:

  • NavigationController - > ViewController1 - > ViewController2(popOver) - > ViewController3

所有连接都是:"显示",除了从ViewController1到ViewController2:"作为popover" 如果我直接从ViewController1-> ViewController3连接(显示),一切都很好......

问题出在哪里?

我使用了这个教程: http://richardallen.me/2014/11/28/popovers.html

ViewController1:

func adaptivePresentationStyleForPresentationController(controller: UIPresentationController) -> UIModalPresentationStyle {
        return UIModalPresentationStyle.None
    }

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
        if segue.identifier == "PopOverIdentifier" {
            let popoverViewController = segue.destinationViewController as! 
            popoverViewController.modalPresentationStyle = UIModalPresentationStyle.ViewController2
            popoverViewController.popoverPresentationController!.delegate = self
        }
}

ViewController2 包括Pickerview和:

override func prepareForSegue(segue: UIStoryboardSegue, sender: AnyObject?) {
    if segue.identifier == "toVC3" {

        var DestViewController : ViewController3 = segue.destinationViewController as!ViewController3
        DestViewController.passedUserID_target = selected_user
    }
}

问题:

problem

1 个答案:

答案 0 :(得分:0)

我通过使用(Editor-> EmbedIn-> NavigationController)将新的NavigationController添加到ViewController3并向布局的按钮添加了一个后退按钮来解决这个问题(暂时)。

从VC1-> VC3中分割数据的问题,我通过在VC3中定义全局变量并添加动作按钮(在VC2中)并将数据分配给这些创建的全局变量来解决。