Реализуйте метод UISplitViewControllerDelegate
splitViewController(_:showDetail:sender:)
(документация здесь ), чтобы переопределить поведение вашего split vc.
В вашем конкретном случае он должен возвращать true все время, кромевремя, когда разделенный vc представлен изначально.В этом случае вы можете установить переменную flag, например,
var isInitialState: Bool = true
, а затем установить ее в false, как только разделенный виртуальный канал будет представлен полностью - здесь я не уверен, когда будет лучшее время, ноЯ бы догадался
override func viewDidAppear(_ animated: Bool) {
[...]
isInitialState = false
[...]
}