2010-08-25 16 views
7

Ich verwende derzeit ein benutzerdefiniertes UIWindow, um eine benutzerdefinierte Warnmeldungsansicht anzuzeigen, damit es im Apple-Stil aussieht. Wenn ich es entferne, verblasst es nicht automatisch, sk entschied ich mich, eine UIView-Animation zu verwenden und das Alpha zu 0 dann zu entfernen, aber das tat immer noch nicht den Trick. Wisst ihr, was zu tun ist?UIWindow animation

+0

Dies sollte funktionieren ... bitte buchen Sie den Code, den Sie verwenden die Animation – Abramodj

Antwort

0

Try this:

[UIView beginAnimations:nil context:NULL]; 
[UIView setAnimationDuration:2.0]; 
[UIView setAnimationBeginsFromCurrentState:YES]; 

greyWindow.alpha = 0; 

[UIView commitAnimations]; 
+0

traurig zu machen, aber das löst nicht das Problem, mit teh gleichen Problem stecken – G33kz0r

9

Für den Hintergrund verblasst Fenster durch meine eigene benutzerdefinierte Alertview-Klasse verwendet (ähnlich dem, was es klingt wie Sie tun) ich eine benutzerdefinierte UIWindow gemacht und makeKeyAndVisible overrode, aber Sie können auch tut dies außerhalb Kontext der Klasse:

- (void)makeKeyAndVisible 
{ 
    self.backgroundColor = [UIColor clearColor]; 
    self.alpha = 0; 

    [UIView beginAnimations: @"fade-in" context: nil]; 

    [super makeKeyAndVisible]; 

    self.alpha = 1; 

    [UIView commitAnimations]; 
} 

- (void)resignKeyWindow 
{ 
    self.alpha = 1; 

    [UIView beginAnimations: @"fade-out" context: nil]; 

    [super resignKeyWindow]; 

    self.alpha = 0; 

    [UIView commitAnimations]; 
} 
Verwandte Themen