Existe-t-il un moyen simple d'importer toutes les icônes du référentiel d'icônes Material Design dans un projet Android sans risque de le faire manuellement?
Jetez un oeil à Vector Asset Studio
Suivez ces étapes pour démarrer Vector Asset Studio:
- Dans Android Studio, ouvrez un projet d'application Android.
- Dans la fenêtre Projet, sélectionnez la vue Android.
- Pointez sur le dossier res, cliquez le bouton droit de la souris et sélectionnez Nouveau> Ressources vectorielles.
Après avoir ouvert Vector Asset Studio, vous pouvez ajouter une icône de matériau comme suit:
- Sélectionnez "Icône Matériau"
- Cliquez sur Choisir
- Sélectionnez une icône de matériau
Vous pouvez utiliser ce nouveau plugin pour Android studio plug-in Générateur d'icônes Android Material Design pour vous aider à utiliser ces icônes matérielles fournies par Google: Google material-design-icons
Voici un script qui clone le référentiel github des icônes de conception de matériel à
https://github.com/google/material-design-icons
et crée un index de tous les fichiers. Il copie également les fichiers svg dans des sous-répertoires par catégorie. Vous pouvez vous en servir comme base pour copier les fichiers qui vous intéressent dans votre projet - il vous suffit de modifier l'instruction de recherche et de copie cp à votre convenance. Si vous par exemple besoin du png à une certaine taille - ils sont dans des répertoires voisins et vous devez alors modifier la commande find and copy en conséquence.
#!/bin/bash
# WF 2016-06-04
# get google material design icons
# see http://stackoverflow.com/questions/28684759/import-material-design-icons-into-an-Android-project
tmp=/tmp/icons
index=$tmp/index.html
mkdir -p $tmp
cd $tmp
if [ ! -d material-design-icons ]
then
git clone https://github.com/google/material-design-icons
fi
cat << EOF > $index
<html>
<head>
<head>
<body>
<h1>Google Material Design Icons</h1>
EOF
for icon in `find . -name *.svg | grep production | grep 48`
do
svg=`basename $icon .svg`
category=`echo $icon | cut -f3 -d '/'`
echo $category $svg.svg
mkdir -p $tmp/$category
cp $icon $tmp/$category
echo " <img src='"$icon"' title='"$category $svg"' >" >> $index
done
cat << EOF >> $index
</body>
</html>
EOF
J'ai trouvé ce lien utile pour moi.
https://dev.materialdesignicons.com/getting-started/Android
la mise en oeuvre graduelle est disponible
dependencies {
implementation 'net.steamcrafted:materialiconlib:1.1.5'
}
Après avoir ajouté une dépendance de niveau, vous pouvez créer un élément de menu de cette manière.
<menu xmlns:Android="http://schemas.Android.com/apk/res/Android"
xmlns:app="http://schemas.Android.com/apk/res-auto" <!-- important, you'll have to include this to use the custom xml attributes -->
xmlns:tools="http://schemas.Android.com/tools" >
<!-- example of a menu item with an icon -->
<item
Android:title="Disable Wifi"
app:showAsAction="always"
app:materialIcon="wifi_off" <!-- This sets the icon, HAS AUTOCOMPLETE ;) -->
app:materialIconColor="#FE0000" <!-- Sets the icon color -->
/>
</menu>