I set up an empty app with only an app delegate class, then subclassed a view controller class to create a xib to layout the app and make connections.
But when I tried
You need to set 2 things for that..
in AppDelegate.m file: _applicationDidFinishLaunchingWithOptions_
self.window.rootViewController = self.viewController;
in application.m
retVal = UIApplicationMain(argc, argv, nil, @"AppDelegate");
Since you're apparently using .xib files, load your view controller and the set the window's rootViewController
property to your view controller in -application:didFinishLaunchingWithOptions:
.
in AppDelegate.m
(BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:UIScreen.mainScreen.bounds];
UIViewController *viewController = // determine the initial view controller here and instantiate it with [storyboard instantiateViewControllerWithIdentifier:];
self.window.rootViewController = viewController;//making a view to root view
[self.window makeKeyAndVisible];
return YES;
}
Applications are expected to have a root view controller
Replace in AppDelegate
[window addSubview:[someController view]];
to
[self.window setRootViewController:someController];