2010-07-30 16 views
1

Sur mon simulateur, un UITabBar semble réagir aux clics de souris jusqu'à environ 10 pixels au-dessus de la barre visible. Au téléphone, il est difficile de dire ce qui se passe, mais mon expérience a été que si je mets un bouton directement contre la barre d'onglets, les utilisateurs viseront souvent le bouton, mais finissent par appuyer sur la barre d'onglets, qui peut être extrêmement confus et déconcertant.iPhone - région active de UITabBar

Pour éviter ces problèmes, je voudrais réduire la zone active de la barre d'onglets.

Est-ce possible?

EDIT: La barre d'onglets est contrôlée par un contrôleur de barre d'onglets.

+0

Avez-vous déjà répondu à cette question? J'ai exactement le même problème. J'ai vu d'autres applications se comporter de cette façon aussi. – vargonian

+0

Non, jamais fait - j'ai fini par déplacer les autres éléments de l'interface utilisateur loin de la barre d'onglets –

Répondre

2

En général, vous ne devez pas placer de contrôles au-dessus du UITabBar. Il y a une forte probabilité que les utilisateurs tapent accidentellement sur ces contrôles lorsqu'ils veulent appuyer sur la barre d'onglets, et vice-versa.

Plusieurs des éléments d'interface utilisateur standard d'Apple ont des cibles tactiles plus grandes que le contrôle visible sur l'écran. Par exemple, le bouton "Retour" dans un UINavigationController peut effectivement être contrôlé lorsque vous avez quelques pixels à l'extérieur du bouton.

L'idée ici est que les clients veulent probablement atteindre le UITabBar s'ils se trouvent à moins de 10px.

Si vous avez vraiment besoin d'avoir des contrôles au bas de l'écran, pensez à masquer le UITabBar lorsque l'utilisateur regarde ce UINavigationController. Vous pouvez le faire en procédant comme suit lorsque vous présentez le contrôleur: