我有一个带有5个标签的TabBarController TBC。在选项卡1中,我有一个NavigationController NVC,带有一个称为VC1的根视图控制器。然后,我从VC1中选择了VC2和VC3(取决于所按的按钮)。
VC2与VC1在同一故事板上,但是VC3在不同的故事板上。
问题: 当我从VC1过渡到VC2时,底部的选项卡栏应正确显示,但是当我从VC1过渡到VC3时,它是一个幽灵选项卡栏,只要发生任何新的过渡,它就会消失(基本上不会显示/ get update,它仅显示VC1中的残余内容。
我怀疑VC2可以工作,因为它与VC1在同一情节提要上,并且从VC1到VC2有明显的区别。故事板显示VC2的安全区域缩小,因为它为选项卡栏腾出了空间。
VC3并非如此。由于它位于不同的情节提要板上,因此我在VC1的情节提要上附加了对VC3的引用,并对该引用进行了标记。这不能解决问题,并且VC3的安全区域不会缩小。
我使用以下代码从VC1过渡到VC2,从VC1过渡到VC3:
let vc = UIStoryboard.init(name: "Main", bundle: Bundle.main).instantiateViewController(withIdentifier: "ViewController1or2") as? ViewController1or2
self.navigationController?.pushViewController(vc!, animated: true)
任何帮助将不胜感激!
问题的GIF: