Импортировать иконки дизайна материалов в проект Android

Есть ли простой способ импортировать все значки репозитория значков Material Design в проект андроида без опасности сделать это вручную?

Ответ 1

Посмотрите Vector Asset Studio

Для запуска Vector Asset Studio выполните следующие шаги:

  • В Android Studio откройте проект приложения для Android.
  • В окне проекта выберите вид Android.
  • Щелкните правой кнопкой мыши папку res и выберите New > Vector Asset.

После открытия Vector Asset Studio вы можете добавить значок материала следующим образом:

  • Выберите "Значок материала"
  • Нажмите "Выбрать"
  • Выберите значок материала

Ответ 3

Вот script, который клонирует репозиторий github значков дизайна материала при

https://github.com/google/material-design-icons

и создает индекс всех файлов. Он также копирует файлы svg в подкаталоги по категориям. Вы можете использовать это в качестве основы для копирования файлов, которые вас интересуют в ваш проект, - просто измените инструкцию find и cp copy по своему вкусу. Если вы, например, нужны png в определенном размере - они находятся в соседних каталогах, и вам необходимо соответственно изменить команду find и copy.

введите описание изображения здесь

#!/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

Ответ 4

Я нашел эту ссылку полезной для меня.

https://dev.materialdesignicons.com/getting-started/android

Gradle реализация доступна

dependencies {
    implementation 'net.steamcrafted:materialiconlib:1.1.5'
}

После добавления зависимости Gradle вы можете создать пункт меню таким образом.

<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>

Ответ 5

В папке drawable > right click > new > vector asset, затем щелкните значок:

Android Studio screen shots showing non-obvious place where to click