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?
(source: appshopper.com )
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:
J'ai également personnalisé le tabhost pour qu'il ressemble à l'onglet Centre surélevé.
pour télécharger RaiseCenterTab, veuillez aller ici GitHub: RaisedCenterTab .
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
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:
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