Create RootSplitViewController in code rather than in storyboard.
This commit is contained in:
parent
903b0257a8
commit
08f21ca4b2
@ -291,6 +291,7 @@
|
||||
8498E53C2D27A766009F5438 /* PBXFileSystemSynchronizedBuildFileExceptionSet */ = {
|
||||
isa = PBXFileSystemSynchronizedBuildFileExceptionSet;
|
||||
membershipExceptions = (
|
||||
/Localized/MainWindow/Main.storyboard,
|
||||
/Localized/ShareExtension/MainInterface.storyboard,
|
||||
IntentsExtension/Info.plist,
|
||||
IntentsExtension/IntentHandler.swift,
|
||||
|
@ -82,12 +82,7 @@ final class AppDelegate: UIResponder, UIApplicationDelegate, UNUserNotificationC
|
||||
self.window = window
|
||||
|
||||
// Create UI and add it to window.
|
||||
let storyboard = UIStoryboard(name: "Main", bundle: nil)
|
||||
let rootSplitViewController = storyboard.instantiateInitialViewController() as! RootSplitViewController
|
||||
rootSplitViewController.presentsWithGesture = true
|
||||
rootSplitViewController.showsSecondaryOnlyButton = true
|
||||
rootSplitViewController.preferredDisplayMode = .oneBesideSecondary
|
||||
|
||||
let rootSplitViewController = RootSplitViewController()
|
||||
coordinator = SceneCoordinator(rootSplitViewController: rootSplitViewController)
|
||||
rootSplitViewController.coordinator = coordinator
|
||||
rootSplitViewController.delegate = coordinator
|
||||
|
@ -11,8 +11,35 @@ import Account
|
||||
|
||||
final class RootSplitViewController: UISplitViewController {
|
||||
|
||||
var coordinator: SceneCoordinator!
|
||||
var coordinator: SceneCoordinator! {
|
||||
didSet {
|
||||
sidebarViewController.coordinator = coordinator
|
||||
timelineViewController.coordinator = coordinator
|
||||
articleViewController.coordinator = coordinator
|
||||
}
|
||||
}
|
||||
|
||||
private lazy var sidebarViewController = MainFeedViewController()
|
||||
private lazy var timelineViewController = TimelineViewController()
|
||||
private lazy var articleViewController = ArticleViewController()
|
||||
|
||||
init() {
|
||||
super.init(style: .tripleColumn)
|
||||
|
||||
setViewController(self.sidebarViewController, for: .primary)
|
||||
setViewController(self.timelineViewController, for: .supplementary)
|
||||
setViewController(self.articleViewController, for: .secondary)
|
||||
|
||||
self.showsSecondaryOnlyButton = true
|
||||
self.preferredDisplayMode = .oneBesideSecondary
|
||||
self.preferredSplitBehavior = .displace
|
||||
self.primaryBackgroundStyle = .sidebar
|
||||
}
|
||||
|
||||
required init?(coder: NSCoder) {
|
||||
fatalError("init(coder:) has not been implemented")
|
||||
}
|
||||
|
||||
override var prefersStatusBarHidden: Bool {
|
||||
return coordinator.prefersStatusBarHidden
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user