Android MipMap - 如何在XML

时间:2015-08-02 22:59:13

标签: android xml drawable mipmaps

我已经注意到Android Studio在项目目录中有“mipmap”文件夹了一段时间。据我所知,为了确保我们在所有设备(应用内图标)中保持图像资源的一致性,我们应该拥有XML格式的图像资源,如下所示:

    <!-- drawable/numeric-1-box.xml -->
<vector xmlns:android="http://schemas.android.com/apk/res/android"
    android:width="24dp"
    android:height="24dp"
    android:viewportHeight="24"
    android:viewportWidth="24">
    <path
        android:fillColor="#757575"
        android:pathData="M14,17H12V9H10V7H14M19,3H5A2,2 0 0,0 3,5V19A2,2 0 0,0 5,21H19A2,2 0 0,0 21,19V5A2,2 0 0,0 19,3Z" />
</vector>

我一直在使用Material Design Icons网站来获取XML格式的大部分常规图标。但是,我该如何创建这样的图标呢?到目前为止,我一直在从上面显示的网站下载它们。我可以用一种工具将我的图像导出为这些格式(XML)吗?这样做的程序是什么? Photoshop,Illustrator或其他一些图像转换网络工具?任何有关如何创建这些图像的帮助将不胜感激。

1 个答案:

答案 0 :(得分:4)

  

我已经注意到一段时间了,Android Studio已经有了&#34; mipmap&#34;项目目录中的文件夹。

请注意,这与其余问题中的任何其他内容无关。矢量drawable将进入res/drawable-nodpi/,而不是mipmap目录。

  

据我所知,为了确保我们在所有设备(应用内图标)中保持图像资源的一致性,我们应该拥有XML格式的图像资源,如下所示:

仅当您的minSdkVersion为21或更高,或者您使用的库提供了VectorDrawable的后端时。 Android 1.0到4.4不支持<vector> drawables。

  

如何创建这样的图标?

我首先要创建一个代表你图标的SVG文件。您可以使用Inkscape等工具本地使用SVG,其他图形工具(例如Adobe Illustrator)可以在SVG中导出。您在该XML中看到的<path>基于SVG路径规范。

从那里,您可以创建<vector> drawable manually或使用tools来执行SVG-&gt; VectorDrawable转换。