2017-07-20 7 views
3

Je pense que j'ai peut-être mal compris la documentation en ligne, mais il y en a beaucoup sur la mise en œuvre de la conception matérielle pour les applications Android à l'aide de la bibliothèque de support d'Android Design.Android: Puis-je utiliser Design Support Library au lieu d'AppCompat pour l'interface utilisateur de Material Design?

J'ai une application avec SDK minimum de 14, que je suis d'accord avec l'augmentation de 16. Je n'utilise pas la disposition de coordinateur ou quoi que ce soit, mais les dépendances suivantes pour Material Design Theme et Snackbar.

compile 'com.android.support:appcompat-v7:25.3.1' 
compile 'com.android.support:design:25.3.1' 

je me demandais si je pouvais supprimer la dépendance à l'AppCompat, et au lieu simplement utiliser la librairie de soutien, pour mettre en œuvre le thème de conception du matériel, mais je suis incapable de trouver comment obtenir cela. Ou ai-je compris cela incorrectement?

+0

Quelles sont les erreurs que vous obtenez? –

Répondre

0

Vous pouvez ignorer la dépendance appcompat car design a une dépendance sur elle. Pour vérifier que vous pouvez utiliser l'arborescence de dépendance de gradle. Voici à quoi ça ressemble. J'utilise com.android.support:design:24.2.1

+--- com.android.support:design:24.2.1 
| +--- com.android.support:support-v4:24.2.1 
| | +--- com.android.support:support-compat:24.2.1 
| | | \--- com.android.support:support-annotations:24.2.1 
| | +--- com.android.support:support-media-compat:24.2.1 
| | | \--- com.android.support:support-compat:24.2.1 (*) 
| | +--- com.android.support:support-core-utils:24.2.1 
| | | \--- com.android.support:support-compat:24.2.1 (*) 
| | +--- com.android.support:support-core-ui:24.2.1 
| | | \--- com.android.support:support-compat:24.2.1 (*) 
| | \--- com.android.support:support-fragment:24.2.1 
| |   +--- com.android.support:support-compat:24.2.1 (*) 
| |   +--- com.android.support:support-media-compat:24.2.1 (*) 
| |   +--- com.android.support:support-core-ui:24.2.1 (*) 
| |   \--- com.android.support:support-core-utils:24.2.1 (*) 
| +--- com.android.support:appcompat-v7:24.2.1 
| | +--- com.android.support:support-v4:24.2.1 (*) 
| | +--- com.android.support:support-vector-drawable:24.2.1 
| | | \--- com.android.support:support-compat:24.2.1 (*) 
| | \--- com.android.support:animated-vector-drawable:24.2.1 
| |   \--- com.android.support:support-vector-drawable:24.2.1 (*) 
| \--- com.android.support:recyclerview-v7:24.2.1 
|   +--- com.android.support:support-annotations:24.2.1 
|   +--- com.android.support:support-compat:24.2.1 (*) 
|   \--- com.android.support:support-core-ui:24.2.1 (*) 

Pour l'utiliser vous

Gradle (en haut à droite onglet) -> Exécuter Gradle tâche (symbole gradle) -> assurez-vous que vous êtes dans :app -> run app:dependencies

Donc, com.android.support:design:25.3.1 aura com.android.support:appcompat-v7:25.3.1 comme dépendance.

+0

Je suppose que votre réponse répond indirectement à ma question qu'il n'est pas possible de faire sans, puisque j'ai besoin de Snackbar et cela dépend de AppCompat pour pre-sdk-22. Cela ne me dérange pas terriblement, mais il semblait trop difficile d'avoir une bibliothèque de support complète juste pour Material Design Theme. Toute alternative? Je pourrais probablement faire sans Snackbar. –

+0

@ShahidThaika Les bibliothèques de support sont toujours une excellente idée à utiliser car elles sont généralement rétrocompatibles. Votre propre solution pourrait être obsolète lors de la prochaine mise à jour de sdk. –

0

Préférable, il est préférable d'utiliser AppCompat, comme dans les anciennes versions d'Android, il va tout adapter. Et cela dépend aussi des Vues que vous allez utiliser: s'il s'agit d'un bouton ordinaire ou d'un texte d'édition, il vaut mieux en utiliser un standard. comme toutes les versions Android les supportent.