web-dev-qa-db-fra.com

android 5.0 onglets de conception de matériaux

Quel est le moyen le plus simple et le plus simple d'implémenter des onglets de style de conception de matière, comme dans la dernière application Google NewsStand? C'est exactement ce que je cherche mais je ne sais pas par où commencer. Toute aide/direction fournie est grandement appréciée. Merci.

45
nomongo

Ce post de @ChrisBanes (ingénieur des programmes de développement pour Android) explique la situation avec la nouvelle barre d’outils.

Donc, this sample peut aider.

Ainsi que this vidéo DevBytes.

Si vous voulez une bibliothèque, vous pouvez choisir celui-ci mais il n’est pas mis à jour en fonction de la conception matérielle (je l’ai fourchue, et si j’ai un peu de temps, je vais essayer de le mettre à jour).

Vous pouvez trouver plus d'informations sur la nouvelle API 21 dans @ blog ChrisBanes ainsi que le blog officiel Android blog

EDIT: Vous pouvez trouver des onglets de conception de matériau dans ce référentiel jpardogo/PagerSlidingTabStrip :

Pour l’instant, j’ai apporté 4 modifications à la bibliothèque d’origine (j’ajouterai la barre d’outils et corrigerai certaines choses demain):

  1. Modifiez les paramètres par défaut de la disposition des onglets pour lui donner l’impression que vous avez davantage de matière.
  2. L'indicateur est au centre par défaut lors du balayage des onglets.
  3. La valeur alpha des titres change en fonction de la position sélectionnée.
  4. Possibilité de transmettre des étiquettes personnalisées implémentant l’interface "CustomTabProvider" dans votre adaptateur.

    • Si la customTab a une vue avec id @+id/tab_title, il sera utilisé pour placer le titre et alpha agira comme d’habitude.
    • Si cette interface n'est pas implémentée, la disposition par défaut de l'onglet sera utilisée (TextView).

Si vous le souhaitez, vous pouvez utiliser un onglet personnalisé avec des ondulations utilisant l’une des bibliothèques suivantes:

EDIT2: J'ai changé le ActionBar pour la nouvelle bibliothèque de support Tooolbar. J'ai également appliqué des couleurs de manière dynamique aux onglets, à la barre d'outils et à la barre d'état. Vous pouvez voir que l'exemple fonctionne dans Android 4.4.3 sur le gif suivant.

J'ai envoyé un PR avec mes modifications. Si le propriétaire du projet d'origine ne met pas à jour la bibliothèque Maven et le transmet à maven, je transmettrai ma bibliothèque à maven central.

material_tabs

85
jpardogo

J'aime personnellement la bibliothèque de jpardogojpardogo/PagerSlidingTabStrip .

Une chose que j’ai trouvée manquante est l’effet d’ondulation comme on le voit dans: Material tabs with ripple effect

J'ai donc décidé de créer ma propre bibliothèque, basée sur PagerSlidingTabStrip et avec un effet d'entraînement personnalisable: pizza/MaterialTabs .

Vous pouvez également trouver un échantillon sur le Play Store , personnaliser vos onglets, puis générer votre code et l'exporter instantanément! :)

7
Karim

J'utilise DrawerLayout, je suis passé à la dernière application, compilé avec api 21 et j'ai ce thème matériel. Assurez-vous que vous utilisez tiroir de v7. Description: http://antonioleiva.com/material-design-everywhere/

3
Carsten