0

我目前有我的应用程序设置在一个分割视图控制器,使详细信息视图和主视图都有导航控制器,细节视图有递归和其他视图之间的节奏。我使用show segues,所以我想这个导航栏会停留在所呈现的细节视图之上。然而,在激活两个segues之后,导航栏消失了,我剩下了看似模态的部分。导航控制器消失在UISplitViewController

下面是我的示例故事板设置的截图能重现问题:

Dropbox

下面是示例项目的链接:

为我怎能导航栏任何建议在视图的顶部?

回答

1

您需要使用导航控制器的推ViewController

override func viewDidLoad() { 
     super.viewDidLoad() 
     buttonNext.addTarget(self, action: #selector(tapsOnNext), for: .touchUpInside) 
    } 
    func tapsOnNext(){ 
     let vc = self.storyboard?.instantiateViewController(withIdentifier: "NextViewController") as? NextViewController 
     self.navigationController?.pushViewController(vc!, animated: true) 
    } 

&在NextViewController使用

buttonPrev.addTarget(self, action: #selector(tapsOnNext), for: .touchUpInside) 
    } 
    func tapsOnNext(){ 
     self.navigationController?.popViewController(animated: true) 
    } 

For Next ViewController

For PrevViewController

+0

我不想弹出下一个视图控制器。当按下按钮时,我只是想继续将它们添加到堆栈中。与Twitter或Facebook类似,您可以在其中查看用户的个人资料,然后从该处点击另一个个人资料,然后再点击一个个人资料,所有这些资料都会添加到视图堆栈中。 – Timestretch

+0

然后使用'self.navigationController?.pushViewController(vc!,animated:true)'但要小心导航堆栈。 – Jack

+0

如果你的意思是记住内存,我的数据是硬编码的,你得到的最多级递归是3.我只是想重用故事板视图而不是制作3个模糊 – Timestretch