2009-08-03 9 views
1

Eine Default.png in Ihrem Anwendungsverzeichnis sieht wie eine gute Möglichkeit aus, um einen vergrößerten Begrüßungsbildschirm "kostenlos" zu erhalten. Zero LOC und alles passiert, bevor Ihr applicationDidFinishLaunching aufgerufen wird, so dass Ihre App Start fühlt sich bissig.Wann wird Default.png gelöscht?

Leider löscht es sich etwas früher als ich möchte: irgendwann nach applicationDidFinishLaunching, aber bevor ich zeichne.

Weiß jemand, wann es passiert und ich kann es überzeugen, länger zu bleiben?

Antwort

1

Wie fangen Sie an zu zeichnen? Ich denke, es verschwindet, wenn der Bildschirm zum ersten Mal gezeichnet wird, was am Ende der ersten Laufschleife zu sein scheint.

Sie können den Effekt, dass es länger bleibt, erstellen, indem Sie eine Bildansicht von Default.png anzeigen. So etwas wie (nicht getestet):

UIImageView *imageView = [[UIImageView alloc] initWithFrame:CGRectMake(0.0, 0.0, 320.0, 480.0)]; 
imageView.image = [UIImage imageNamed:@"Default.png"]; 
imageView.tag = 1234; // Must be a unique tag (int) 
[window addSubview:imageView]; 
[imageView release]; 
//... 
// When you want to hide/remove it: 
UIView *defaultPng = [window viewWithTag:1234]; 
[defaultPng removeFromSuperview]; 

Wenn Sie wollen, dass es für einige bestimmte Zeit gezeigt werden, stelle ich mich Ihnen den zweiten Teil des Codes verwenden würden, entweder in einer NSTimer Aktionsmethode oder eine Methode aufgerufen using performSelector: withObject: afterDelay :. Wenn die Verzögerung unbekannt ist, können Sie diesen Code verwenden, wo immer Sie möchten.

Vorbehalt: Wenn Ihre App Multithread ist, stellen Sie sicher, dass sie aus dem Hauptthread aufgerufen wird. Sie können performSelectorOnMainThread verwenden: withObject: waitUntilDone :.

Hoffe, das hilft.