Skip to content

Instantly share code, notes, and snippets.

@douglashill
Last active October 6, 2023 18:10
Show Gist options
  • Star 37 You must be signed in to star a gist
  • Fork 1 You must be signed in to fork a gist
  • Save douglashill/1bd6ba60b50315455ed2b2381bc355dc to your computer and use it in GitHub Desktop.
Save douglashill/1bd6ba60b50315455ed2b2381bc355dc to your computer and use it in GitHub Desktop.
A minimal iOS 13 app that is set up in Objective-C rather than using a storyboard and UIApplicationSceneManifest
@import UIKit;
@interface SceneDelegate : UIResponder <UIWindowSceneDelegate>
@end
@implementation SceneDelegate
@synthesize window = _window;
- (void)scene:(UIScene *)scene willConnectToSession:(UISceneSession *)session options:(UISceneConnectionOptions *)connectionOptions {
self.window = [[UIWindow alloc] initWithWindowScene:(UIWindowScene *)scene];
self.window.rootViewController = [[UIViewController alloc] init];
[self.window makeKeyAndVisible];
}
@end
@interface AppDelegate: UIResponder <UIApplicationDelegate>
@end
@implementation AppDelegate
- (UISceneConfiguration *)application:(UIApplication *)application configurationForConnectingSceneSession:(UISceneSession *)connectingSceneSession options:(UISceneConnectionOptions *)options {
UISceneConfiguration *configuration = [[UISceneConfiguration alloc] init];
configuration.delegateClass = SceneDelegate.class;
return configuration;
}
@end
int main(int argc, char * argv[]) {
return UIApplicationMain(argc, argv, nil, NSStringFromClass(AppDelegate.class));
}
@Br1an-Boyle
Copy link

Hey @douglashill 👋
Thanks for this code sample.
Do you know if it's possible to add more that one UIWindow to a scene at this point, so that you'd have two UIWindow objects in the view hierarchy?
I've been trying to get this working but to no avail.
Thanks!

@douglashill
Copy link
Author

I haven’t tried this.

@Br1an-Boyle
Copy link

👋 Got it working. It seems you need to assign any window reference to its own property for it to show up in the view hierarchy.

@OPY-bbt
Copy link

OPY-bbt commented Sep 23, 2019

Thanks

@dwmoff
Copy link

dwmoff commented Oct 20, 2019

works for me. except view controller views are all disabled. this problem ONLY occurs on iOS 13.

@Puliyedath
Copy link

how were you able to enable the view control views ? , I am new to IOS development and i have been struggling to get the view controller views enabled :(

@nedimf
Copy link

nedimf commented Jan 7, 2021

Good sample I would just change:

    self.window.rootViewController = [[UIViewController alloc] init];

to:

    self.window.rootViewController = [[NameOfYourViewController alloc]init];

Also don't forget to import #import "NameOfYourViewController.h"

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment