【发布时间】:2019-01-21 10:28:43
【问题描述】:
我有一个 Show 类型 UIStoryboardSegue 和 abSegue 标识符。它从 UIViewController A 导航到 B。
在整个应用程序中,我使用了自定义 UINavigationController,它工作得非常好,但在这里却不行。
使用self.performSegue(id: "abSegue", sender: self) 会导致UINavigationController 丢失,但使用
let controller = UIStoryboard(name: "Storyboard", bundle: bundle).instantiateViewController(withIdentifier: "B")
navigationController?.pushViewController(controller)
工作正常,我收到了预期的UINavigationController。
什么会导致这种行为?
【问题讨论】:
-
在你的故事板中,
A是导航控制器的根 VC,还是至少通过 segues 连接到导航控制器? -
@DonMag 是的,它是
-
OK - 你的故事板中的从
A到B也是 在导航控制器层次结构中吗?它的“善良”是Show (e.g. Push)? -
这个最新的@DonMag 问题可能是这里的关键......您可能想给我们一个快速概述 UINavigationController → 如何链接到 A → 链接到 B... 也许通过提供您的故事板的屏幕截图。转场可能很棘手。
标签: swift uinavigationcontroller storyboard uistoryboardsegue pushviewcontroller