Barre de navigation fade out
J889
Membre
Bonjour à tous,
J' ai vu ce code sur internet mais lorsque je le teste j' ai un message d' erreur sur kNavigationBarFadeDelay me disant que ce n' est pas definie.
Quelqu' un peut il m' aider ?
Merci d' avance.
J' ai vu ce code sur internet mais lorsque je le teste j' ai un message d' erreur sur kNavigationBarFadeDelay me disant que ce n' est pas definie.
@interface MyViewController () <br />NSTimer *fadeTimer;<br />@property (nonatomic, retain) NSTimer *fadeTimer;<br />- (void) fadeBarController;<br />- (void) fadeBarAway:(NSTimer *)timer;<br />- (void) fadeBarIn;<br />@end<br /><br />@implementation MyViewController<br />@synthesize fadeTimer;<br /><br />#pragma mark -<br />#pragma mark View Lifecycle<br />-(void) viewWillAppear:(BOOL)animated {<br />[[UIApplication sharedApplication] <br /> setStatusBarStyle:UIStatusBarStyleBlackTranslucent animated: YES];<br />self.navigationController.navigationBar.barStyle = UIBarStyleBlackTranslucent;<br />}<br /><br />- (void) viewDidAppear:(BOOL)animated {<br /> [self fadeBarController];<br />}<br /><br />- (void) viewDidDisappear:(BOOL)animated {<br /> [self.fadeTimer invalidate];<br />}<br /><br />- (void)dealloc {<br /> [fadeTimer release];<br />}<br /><br />#pragma mark -<br />#pragma mark Fade In/Out code<br />- (void) touchesEnded: (NSSet *) touches withEvent: (UIEvent *) event {<br /> [super touchesEnded: touches withEvent: event];<br /> [self fadeBarController];<br />}<br /><br />- (void)fadeBarController {<br /> if (self.navigationController.navigationBar.alpha == 0)<br /> {<br /> [self fadeBarIn];<br /> }<br /><br /> if (self.fadeTimer != nil)<br /> { <br /> [self.fadeTimer invalidate];<br /> }<br /> self.fadeTimer = [NSTimer<br /> //message d' erreur sur kNavigationBarFadeDelay<br /> scheduledTimerWithTimeInterval:kNavigationBarFadeDelay target:self<br /> selector:@selector(fadeBarAway:) userInfo:nil repeats:NO];<br />}<br /><br />- (void)fadeBarAway:(NSTimer*)timer {<br /> [UIView beginAnimations:nil context:NULL];<br /> [UIView setAnimationDuration:0.35];<br /> self.navigationController.navigationBar.alpha = 0.0;<br /> [[UIApplication sharedApplication] setStatusBarHidden:YES animated:YES];<br /> [UIView commitAnimations];<br />}<br /><br />- (void)fadeBarIn {<br /> [UIView beginAnimations:nil context:NULL];<br /> [UIView setAnimationDuration:0.35];<br /> self.navigationController.navigationBar.alpha = 1.0;<br /> [[UIApplication sharedApplication] setStatusBarHidden:NO animated:YES];<br /> [UIView commitAnimations];<br />}<br /><br />@end
Quelqu' un peut il m' aider ?
Merci d' avance.
Connectez-vous ou Inscrivez-vous pour répondre.
Réponses
Soit tu le redéfinis, soit tu mets un float à la place.
Pour un délai en seconde, ça passe... c'est pas des coordonnées.
Les constantes non définies, c'est bien ?
C'est juste le bête copier/coller d'un extrait de code sans le comprendre (quitte à en oublier des morceaux), qui est le mal (autant que les magic numbers) :P