将材质设计图标导入 android 项目

有没有一种简单的方法可以导入所有的材质设计图标库的图标到一个安卓项目,而不用手工操作的危险?

113546 次浏览

你可以在 android 工作室使用这个新插件 安卓材质设计图标生成器插件 来帮助你使用谷歌提供的这些材料图标: 谷歌材料-设计-图标

看看 矢量资产工作室

按照以下步骤启动 Vector Asset Studio:

  • 在 Android Studio 中,打开一个 Android 应用程序项目。
  • 在 Project 窗口中,选择 Android 视图。
  • 右键单击 res 文件夹并选择 New > Vector Asset。

打开 Vector Asset Studio 后,可以添加如下材质图标:

  • 选择“材质图标”(通过点击剪贴画: 图标)
  • 点击选择
  • 选择一个材质图标

下面是一个克隆 github 材质设计图标库的脚本 在

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

并创建所有文件的索引。它还按类别将 svg 文件复制到子目录。您可以以此为基础将您感兴趣的文件复制到您的项目中——只需按您的喜好修改 find 和 cp copy 语句。如果你需要一个特定大小的 png-它们在相邻的目录中,那么你需要相应地修改 find 和 copy 命令。

enter image description here

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

我发现这个链接对我很有帮助。

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

可以使用分级实现

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

在添加了级别依赖项之后,您可以通过这种方式创建菜单项。

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

在文件夹 drawable > right click > new > vector asset上,然后单击图标:

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

文件中,我发现了这句有用的台词:

import androidx.compose.material.Icon


Icon(Icons.Rounded.Menu, contentDescription = "Localized description")

这很简单,而且非常有效!