Je souhaite personnaliser l'aspect et la convivialité de la barre d'onglets d'un UITabBarController. Je veux changer les couleurs, la façon dont l'icône apparaît quand ils sont sélectionnés, et aussi, le plus important de tous, je veux réduire la taille de la barre d'outils personnalisée.Personnalisé UITabBarController
Mes approches pour cela et les obstacles dans ce sont:
A) La première solution qui est venue à l'esprit était de créer ma propre viewController qui agira comme un UITabBarController avec des boutons en bas et ajoutez cette viewController à la fenêtre. Une fois que l'utilisateur tape sur un bouton en bas, permutez la vue dans la zone visible avec le nouveau viewController qui correspond au bouton maintenant tapé par l'utilisateur.
Le problème avec cette stratégie est la suivante: puisque j'échange les viewControllers correspondants de vue ne sera pas obtenir ces messages:
viewWillAppear
viewWillDisappear
viewDidAppear
viewDidDisappear
Et tous les événements de rotation
B) Je aurais pu utiliser l'approche de la réponse acceptée dans ce fil: Custom UITabBarController Problems with View Controllers and Views
Mais la hauteur de mon tabBar n'est pas la même chose que la valeur par défaut.
En raison des raisons citées ci-dessus, je ne peux pas utiliser ces approches.
Cela dit, je n'ai pas d'exigence particulière d'onglet Plus. Je vais avoir seulement 5 onglets qui seront affichés par la barre d'onglets et donc la réorganisation des éléments de la barre d'onglets est hors de portée.
En attente de suggestions et d'idées.
Hmmm, merci pour votre suggestion . Eh bien, je pourrais personnaliser comme vous l'avez dit. Aussi, je peux transmettre tous les messages comme vous l'avez mentionné. Mais les soucis sont: 1. -viewWillAppear et disAppear ne seront rien mais un ensemble consécutif d'appels! 2. Le contrôleur de vue reçoit automatiquement un rappel d'orientation initiale lorsque la vue est chargée. -didRotateFromInterfaceOrientation, mais dans ce cas nous devrons le simuler. 3. Je suis préoccupé par les problèmes ou les obstacles qui pourraient survenir à l'avenir, puisque c'est la base de mon application, je me demande si ce risque vaut la peine d'être pris? –
Tous les contrôleurs de vue dans cette phrase signifient: "UITabBarController ne renvoie YES que si tous ses contrôleurs enfants retournent YES pour l'orientation demandée", disons s'il y a 4 onglets, alors si tous les viewcontrollers correspondant aux 4 onglets répondent seulement à l'orientation courante il devrait retourner YES -OU- seulement le contrôleur de vue qui est affiché par le TabBarcontroller devrait être interrogé? –