web-dev-qa-db-fra.com

Android - tabhost de style iphone

Est-il possible de styliser le Android Tabhost pour ressembler à celui de l'iPhone? Sinon, y a-t-il un code open source qui peut montrer comment créer des onglets inférieurs pour Android?

alt text
(source: appshopper.com )
alt text

29
Soni Ali

Je vous suggère de ne pas changer l'apparence par défaut des onglets, car les utilisateurs sur les appareils Android ont leur propre expérience utilisateur, et vous annulerez cette expérience passée, alors ne forcez pas pour qu'ils apprennent de nouveaux onglets (parce que les utilisateurs sur mobile sont tellement paresseux pour apprendre de nouvelles choses, ils comptent généralement sur leur expérience passée.)

Voir Android pur pour en savoir plus.

Cependant, si vous voulez continuer, j'ai personnalisé les onglets Android par défaut pour qu'ils ressemblent aux onglets iPhone. Ce qui est simple et comporte des composants d'interface utilisateur par défaut Android tabs (̶T̶a̶b̶H̶o̶s̶t̶, ̶T̶a̶b̶W̶i̶d̶g̶e̶t̶).

Lien de téléchargement: GitHub, Iphone-Tab-in-Android

Cet exemple a été mis à niveau pour utiliser TabLayout et ViewPager

L'entrée Relavent Blog peut être trouvée ici:

iPhone comme Tabs dans Android.

La capture d'écran:

tabs at bottom screenshot

J'ai également personnalisé le tabhost pour qu'il ressemble à l'onglet Centre surélevé.

Raised Center Screenshot

pour télécharger RaiseCenterTab, veuillez aller ici GitHub: RaisedCenterTab .

69
Adil Soomro

Vous devrez créer ce contrôle vous-même. Peu d'options:

  • utiliser RadioGroup et y mettre des boutons radio personnalisés et personnaliser l'enfer.

  • créez ce contrôle à partir de zéro, héritez-le d'une des dispositions (Frame, Relative, Linear) et créez le comportement dont vous avez besoin.

  • Vous pouvez également prendre TabHost src et l'utiliser comme base pour votre contrôle

16
Alex Volovoy

Vous pouvez consulter: https://github.com/mta452/iTab

Le point positif est qu'il fait automatiquement la mise en forme des images avec un dégradé comme le fait iOS.

Capture d'écran:

Screenshot of iTab

5
Tayyab Akram

Votre capture d'écran a le style Android 1.6. Si vous utilisez un tabhost sur une version plus récente et que vous le placez simplement en bas de l'écran, il ressemblera beaucoup à la version iphone.

Je ne changerais pas grand-chose à l'interface utilisateur de Android donnez-lui simplement une ressemblance avec l'apparence de l'iphone (mêmes icônes) et restez avec le reste dans le Android style. Cela rendra l'application familière aux utilisateurs.

Pour obtenir le même aspect pour les icônes, utilisez simplement une définition xml de vous dessinable avec un état sélectionné et non sélectionné du bouton comme il apparaît sur l'iphone. Pour définir une icône, utilisez la méthode setIndicator de la tabspec.

Vous pouvez quelque peu styliser l'hôte de tabulation en définissant un arrière-plan ou un style pour le tabwidget. Mais la partie intérieure réelle du widget sera dessinée au-dessus de votre style et de votre arrière-plan

1
Janusz