splitViewController collapseSecondary 仅在启动时触发

splitViewController collapseSecondary only fires at launch

我正在开发一个行为不端的应用程序。该应用程序有一个 splitViewController,它在首次启动时会触发 :

    func splitViewController(_ splitViewController: UISplitViewController, collapseSecondary secondaryViewController: UIViewController, onto primaryViewController: UIViewController) -> Bool 

函数。但是,在旋转到横向并返回纵向后,它再也不会触发(随后显示我的详细视图而不是主视图,这不是我想要的)。我已经将 splitViewController.delegate 设置为 self……任何人都可以给我一些线索,告诉我应该更仔细地查看什么来调试它吗?

确定找到我自己的答案。在这种情况下,我们在 viewDidLoad() 中的 detailViewController 中分配了 splitViewController?.delegate = self(为什么,我现在不确定 - 代码有点旧)。删除它会使 collapseSecondary 函数按预期启动。希望这对某人有所帮助。