xcode 使用按钮弹出后导航栏不再可见
xcode navigationbar is not more visible after popover with button
我在 iphone 视图中创建了一个弹出框,里面有一个按钮可以转到另一个 ViewController。
但是popOver之后的所有Viewcontroller都没有导航栏了。
我的项目结构:
- NavigationController -> ViewController1 -> ViewController2(popOver) ->ViewController3
所有连接都是:"show",除了从 ViewController1 到 ViewController2:"present as 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
}
}
问题:
我通过使用 (Editor->EmbedIn->NavigationController) 将新的 NavigationController 添加到 ViewController3 并向布局的按钮添加后退按钮(暂时)解决了这个问题。
从 VC1->VC3 中提取数据的问题,我通过在 VC3 中定义一个全局变量并添加一个操作按钮(在 VC2 中)并将数据分配给这些创建的全局变量来解决。
我在 iphone 视图中创建了一个弹出框,里面有一个按钮可以转到另一个 ViewController。 但是popOver之后的所有Viewcontroller都没有导航栏了。
我的项目结构:
- NavigationController -> ViewController1 -> ViewController2(popOver) ->ViewController3
所有连接都是:"show",除了从 ViewController1 到 ViewController2:"present as 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
}
}
问题:
我通过使用 (Editor->EmbedIn->NavigationController) 将新的 NavigationController 添加到 ViewController3 并向布局的按钮添加后退按钮(暂时)解决了这个问题。
从 VC1->VC3 中提取数据的问题,我通过在 VC3 中定义一个全局变量并添加一个操作按钮(在 VC2 中)并将数据分配给这些创建的全局变量来解决。