Animer la barre de navigation de texte titre du changement

Dans mon application, j'ai une page vue-contrôleur qui permet à l'utilisateur de glisser entre les différentes "sections" de l'application, et en haut dans la barre de navigation-je modifier le texte du titre de la nouvelle section, l'utilisateur n'a passé à la via pageViewController:didFinishAnimating:previousViewControllers:transitionCompleted:. Il est actuellement instantanément changer le titre du texte lorsque l'animation est terminée. Je voudrais améliorer avec un peu d'animation, un subtil en fondu effet.

J'ai d'abord essayé de mettre en œuvre [UIView animationWithDuration:...] pour animer la modification du titre du texte, mais il n'a pas d'animation et simplement les mises à jour instantanément.

Puis je me suis demandé si ce serait possible de mettre à jour l'alpha de la valeur liquidative de la barre de titre que l'utilisateur fait défiler horizontalement en fonction de la façon dont beaucoup ils ont défilé, pour atteindre 0 alpha lors de la prochaine section est sur le point de venir à l'écran, alors je peux changer instantanément le texte alors qu'il est à 0, puis rapidement fondu dans 1 alpha. Mais je ne vois pas une méthode sur UIPageViewControllerDelegate qui est appelé lorsque la position de défilement a mis à jour.

Si possible, au lieu de simplement en fondu, j'ai pu fondu ainsi que déplacer le titre de la position du texte dans la barre de navigation comme l'animation par défaut qui se produit lors de la navigation de retour d'un push enchaîner par un mouvement de balayage. Je voudrais glisser l'ancien titre de la section sur que l'utilisateur fait défiler et de fournir le prochain titre de la section sur l'autre côté, de sorte que lors de la transition complète le précédent titre de la section est hors de l'écran, et le nouveau est parfaitement centrée, de sorte que le remplacement se termine. Mais là encore, cela nécessite de savoir exactement dans quelle mesure l'utilisateur a fait défiler la page-vue-contrôleur.

Est-il possible de mettre en œuvre de l'souhaité animations?

Avez-vous essayé d'utiliser un affichage personnalisé pour votre navigation titre? auto.navigationItem.titleView = customNavTitleLabel;
Je n'ai pas, je vais étudier ça. Est-il possible d'obtenir le UILabel du titre existant, de sorte que je peux récupérer la valeur par défaut (elle change avec le Texte en Gras est activé), le modifier, et de le régler à l'tordu?
Je pense que j'ai vu des gens utiliser les quelques fous boucle récursive pour trouver la valeur liquidative titre de la sous-vue 😛 vous pouvez essayer si vous voulez.
Merci @Zhang. Je n'ai finalement décider de créer un titre personnalisé et l'animer à l'aide de l'affichage de la page du contrôleur caché scrollView délégué de la méthode. Il fonctionne à merveille.

OriginalL'auteur Jordan H | 2014-07-03