J'ajoute une image d'arrière-plan personnalisée à mon UINavigationBar en remplaçant le drawRect via une catégorie.UINavigationBar image d'arrière-plan via drawRect - problème avec l'animation rapide
- (void)drawRect:(CGRect)rect{ [[UIImage imageNamed:@"navbar.png"] drawInRect:CGRectMake(0, self.frame.size.height-44, self.frame.size.width, 44)]; }
Cette solution semble fonctionner très bien, jusqu'à ce que vous essayez d'utiliser la propriété navigationitem.prompt. Au lieu de faire une animation fluide de présentation de l'invite, il le fait brusquement.
Y a-t-il des suggestions pour y remédier? Ou une autre façon de définir une image de fond.
PS. J'essaie d'éviter d'ajouter une image d'arrière-plan en tant que sous-vue à cause de la façon dont les choses se réorganisent lorsque les vues sont en mode push/pop. Et je détesterais envoyer SendviewToBack dans viewDidAppear de chaque vue.
TIA! EDIT: J'ai également essayé la méthode swizzling, qui fonctionnerait bien si je pouvais juste laisser mon image s'étirer, mais comme l'image n'est pas extensible, je dois trouver comment exploiter l'animation qui arrive à faire un décaler au lieu d'un étirement.
EDIT: voir ma réponse ci-dessous hacky
En ce qui concerne la façon dont vous implémentez drawRect :, vous pouvez jetez un coup d'oeil à http://stackoverflow.com/questions/1085479/override-a-method-via-objc-category-and-call-the-default-implementation –
En fait, j'ai aussi essayé la méthode swizzling ce drawRect particulier, mais les résultats ne sont pas très agréables. Il reprend l'animation d'origine, mais l'image personnalisée ne fait que "apparaître". – dizy
En fait, je viens de réaliser que ma méthode swizzling ne compile pas sur l'appareil. Est-il possible de basculer sur l'appareil iPhone? – dizy