У меня есть унаследованное приложение, которое использует UISplitViewController для главного / подробного представленияЭто ведет себя по-разному на iOS до 12 против 13. Например, если вы запустите пейзаж приложения, он покажет как мастер, так и детализацию. Поверните влево, и он будет отображать только детали. Поверните вправо (в исходную альбомную ориентацию), и все же только детали отображаютсяЭто даже работает по-разному на iPad Pro против iPad 7-го поколения против iPad Air 2.
(Это поведение также объясняется в http://www.openradar.me/radar?id=4969975819272192)
class SplitViewController: UISplitViewController, UISplitViewControllerDelegate {
override func viewDidLoad() {
super.viewDidLoad()
self.delegate = self
preferredDisplayMode = .allVisible
}
func splitViewController(_ splitViewController: UISplitViewController, collapseSecondary secondaryViewController:UIViewController, onto primaryViewController:UIViewController) -> Bool {
print("Split view controller function")
guard let secondaryAsNavController = secondaryViewController as? UINavigationController else { return false }
guard let topAsDetailController = secondaryAsNavController.topViewController as? DetailViewController else { return false }
if topAsDetailController.passedEntry == nil {
return true
}
return false
}
}
. Я хотел бы внести изменения в настройки по умолчаниюповедение экземпляров UITSplitViewController в приложении, либо в AppDelegate, либо в плагине Cordova, в качестве обходного пути до тех пор, пока Apple не исправит iOS13. У кого-то еще возникают такие же проблемы? Есть предложения, как это сделать?