web-dev-qa-db-fra.com

Pourquoi certaines applications iOS personnalisées utilisent-elles la barre de navigation native?

Je parle d'Instagram ou de Foursquare, ils sont conçus sur mesure mais utilisent toujours la barre de menus à thème par défaut pour la navigation. Y a-t-il un sale secret derrière ça?

6
Shalvius

Ils le font car il est facilement reconnaissable par leurs utilisateurs. Apple insiste sur l'utilisation d'éléments d'interface standard dans leurs iOS Human Interface Guidelines :

Dans iOS, le cadre UIKit fournit une large gamme d'éléments d'interface utilisateur que vous pouvez utiliser dans votre application. Lorsque vous concevez l'interface utilisateur de votre application, n'oubliez pas que les utilisateurs s'attendent à ce que les vues et les contrôles standard se comportent comme ils le font dans les applications intégrées. C'est à votre avantage, tant que vous utilisez ces éléments de manière appropriée dans votre application.

Ils comprennent également que les applications seront personnalisées dans une certaine mesure. Le fait qu'Instagram et Foursquare aient déjà effectué une certaine personnalisation leur donne encore plus de raisons de s'en tenir à certaines conventions telles que la barre de navigation native. Cela aide les utilisateurs à se familiariser avec une expérience utilisateur familière lors de l'utilisation d'un appareil iOS. Il est également important de noter que légèrement a modifié l'apparence de leur barre de navigation (les couleurs sont légèrement différentes, il y a un aspect "ancien" légèrement bruni au ombres).

enter image description here

Apple n'a aucun problème avec cela non plus, mais ils vous conseillent de le faire d'une certaine manière:

Si vous créez des éléments d'interface utilisateur personnalisés pour répliquer des éléments d'interface utilisateur standard dans tous les aspects sauf l'apparence, vous devriez plutôt envisager d'utiliser les interfaces de programmation de personnalisation d'apparence disponibles dans iOS 5 et versions ultérieures. Lorsque vous utilisez ces API, vous pouvez personnaliser l'apparence de la plupart des éléments d'interface utilisateur et toujours recevoir des mises à jour d'apparence automatiques.

9
Matt Rockwell

Je pense que la réponse est simple. Rouler votre propre version de UINavigationController est un processus complexe et long (nous l'avons fait et cela a pris un certain temps). L'animation est probablement la partie la plus difficile à reproduire. Vous pouvez utiliser Basculer les animations lentes dans le simulateur iOS dans l'application Paramètres pour voir l'animation de la barre de navigation ralentie. Il se passe quelques choses en même temps.

Certaines modifications et ajustements peuvent être apportés à la barre de navigation standard iOS, comme les teintes et la transparence, mais ceux-ci ne vous mènent pas trop loin si votre objectif est une barre de navigation personnalisée.

Je crois que le sous-classement peut être utilisé pour effectuer des changements de base, comme échanger l'arrière-plan de la barre de navigation principale (je suis un concepteur, pas un programmeur, donc ne prenez pas les aspects plus techniques comme du gospel). Je soupçonne que c'est ce que fait Instagram, car leurs boutons et animations semblent standard.

Si vous utilisez uniquement iOS 5, UIAppearance peut être utilisé pour remplacer proprement certaines parties de la barre de navigation et des boutons par des éléments personnalisés. Selon ce que vous voulez, l'apparence UIA peut être suffisante.

Si vous suivez la voie personnalisée, il peut être utile de conserver les tailles d'Apple. La barre de navigation est haute de 44 pixels non rétiniens pour une bonne raison: c'est une taille de robinet agréable et facile pour nos gros doigts humains.

Lectures complémentaires:

3
Marc Edwards

Pour connaître la vraie réponse à cette question, il faudrait demander à Instagram, Foursquare, ...

Je ne peux que vous donner ma conjecture. Je peux imaginer que la considération de choisir cette approche a des racines techniques, pas des racines UX. Il est juste beaucoup plus rapide et plus facile de choisir l'un de ces modèles d'application intégrés pour concevoir une application iPhone. C'est en fait assez indépendamment du reste de l'interface utilisateur, même s'ils auraient pu se faciliter la tâche également.

1
Bart Gijssens