Ist eine MainWindow.xib wirklich benötigt iOS-Anwendung?
Bevor Sie tun, jede Art von iOS 5.0-Entwicklung mit Xcode 4.2, Xcode bereitgestellt hat, eine "MainWindow.xib" in Vorlagen. Nach dem Download und dem spielen mit Xcode 4.2 mit iOS 5.0, bemerkte ich, dass keiner von den bereitgestellten Vorlagen einschließen "MainWindow.xib" - Dateien. Brauchen wir das nicht mehr? Ich bemerkte, dass in der "application didFinishLaunchingWithOptions-Methode" in der App_Delegate, dass die Vorlagen enthalten jetzt den code, dass schafft einige "UIWindow" und wenn man keinen navigation Controller, aktualisiert er das Fenster entsprechend.
//code that was pulled from a Master Detail application template
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
//Override point for customization after application launch.
MasterViewController *masterViewController = [[MasterViewController alloc] initWithNibName:@"MasterViewController" bundle:nil];
self.navigationController = [[UINavigationController alloc] initWithRootViewController:masterViewController];
self.window.rootViewController = self.navigationController;
[self.window makeKeyAndVisible];
return YES;
}
Ich denke, meine Frage ist, brauche ich ein "MainWindow.xib" nicht mehr, und wenn ja, warum dann nicht die Apple-Vorlagen, die Sie ausschließen?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ich denke, der Grund, warum es jetzt nicht mehr ist, dass ein Fenster programmgesteuert ist viel effizienter als das öffnen einer xib-Datei und unarchiving der Objekte. Im Allgemeinen, wenn Sie können, tun Sie es in einer Zeile code, die Sie tun sollten, dass im code.
Lesen Sie Matthäus Gillingham Antwort für Anweisungen zum manuellen ändern, ein altes Projekt zu arbeiten, ohne das Hauptfenster.xib.
Es ist immer eine option nicht zu benutzen MainWindow.xib. Die UIWindow geladen werden konnte, programmgesteuert das zu tun, die folgenden:
1) und achten Sie darauf, dass der Aufruf zu UIApplicationMain in main.m sieht so aus:
vielmehr als das:
2) und achten Sie darauf, dass Info.plist nicht über einen Wert von "MainWindow.xib" als das wichtigste nib-Datei.
3) Laden des UIWindow programmgesteuert in das app-delegate.
So, Nein, Sie müssen nicht zu verwenden MainWindow.xib und, tatsächlich, Sie nie haben. Sie konnte immer Dinge tun, die programmgesteuert.
Es ist eine gute Frage, warum Apple diese änderung in der Standard-Xcode-Einstellungen, und ich weiß nicht, die Antwort. Aber es hat vielleicht mit Leistung oder den übergang zu BOGEN oder eine kleine Anwendung, die Dateigrößen oder etwas vollkommen anderes.
Ich immer das Gefühl, verwirrt über die Verwendung von MainWindow.xib: auch mit es ich muss noch festgelegt Fenster rootViewController oder addSubview zu. Nicht, dass die Informationen im Hauptfenster.xib ? Warum brauche ich noch zu sagen Fenster darüber?
So entfernen MainWindow.xib-scheint Sinn zu machen.