Je souhaite afficher un écran d'accueil avant le déjeuner App. D'abord, je fais la SplashWindow sous-classement du NSWindow, le code est:Pourquoi la fenêtre de démarrage ne peut pas être affichée avant le lancement de l'application?
- (id)initWithContentRect(NSRect)contentRect
styleMask(unsigned int)aStyle
backing(NSBackingStoreType)bufferingType
defer(BOOL)flag {
self = [super initWithContentRect:contentRect
styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:NO];
[self setBackgroundColor:
[NSColor clearColor]];
[self setLevel: NSStatusWindowLevel];
[self setAlphaValue:1.0];
[self setOpaque:NO];
[self setHasShadow: YES];
return self;
}
puis dans la veille de pointe dans le contrôleur de l'application principale:
loadWindow = [[NSWindow alloc] initWithContentRect:[loadWindow frame] styleMask:NSBorderlessWindowMask backing:NSBackingStoreBuffered defer:YES];
[loadWindow setContentView:theView];
[loadWindow setHasShadow:YES]; [
loadWindow setLevel:NSStatusWindowLevel];
[loadWindow makeKeyAndOrderFront:self];
puis je laisse le loadWindow fermé après 3 secondes , J'ai utilisé la méthode [loadWindow orderOut: self], mais quand la fenêtre splash s'est fermée, le mainwinow ne s'est pas montré. Qu'est-ce que je rate? Mon application est un multi_Documents. et dans le mainMenu.nib il y avait une fenêtre (loadwindow), dans IB j'ai connecté la sortie loadWindow dans le contrôleur principal. J'ai également connecté la vue et l'image. et j'ai changé d'une autre façon: dans la méthode déléguée: applicationWillFinishLaunching: Je commandeFront la loadWindow, dans la méthode: applicationDidFinishLaunching: Je commandeOut la loadWindow après 3 secondes, mais la mainWindow n'a pas montré trop.Certains peuvent donner des conseils ou des codes le résultat le problème? Merci beaucoup!