Android Studio 默认新建 Module 时,只新建一个 drawable 目录,并不会新建适配不同分辨率的 drawable 目录。但其实,这是可以设置的。有以下两种方法

一、概述

Android Studio 默认新建 Module 时,只新建一个 drawable 目录,并不会新建适配不同分辨率的 drawable 目录。但其实,这是可以设置的。有以下两种方法:

二、方法介绍

2.1 方法1

  • 进入 [androidstudio安装目录]/plugins/android/lib/templates/gradle-projects/NewAndroidModule/root/res 目录
  • 在此目录下,新建你要初始化的文件夹(drawable-hdpi 等文件夹)**这一点可以参照同目录下的 mipmap 各种分辨率的 mipmap 目录
  • 你可以在各个文件夹中放一张默认的图,以后每次新建项目时,就会有类似 mipmap 目录下的 ic_launcher.png
  • 回退到 [androidstudio安装目录]/plugins/android/lib/templates/gradle-projects/NewAndroidModule 目录,打开 recipe.xml.ftl 文件
  • recipe.xml.ftl 中增加如下的代码,位置见图(依据你要初始化的目录来添加相应代码)
    1
    2
    3
    4
    5
    6
    <copy from="root/res/drawable-hdpi"
    to="${escapeXmlAttribute(resOut)}/drawable-hdpi" />
    <copy from="root/res/drawable-xhdpi"
    to="${escapeXmlAttribute(resOut)}/drawable-xhdpi" />
    <copy from="root/res/drawable-xxhdpi"
    to="${escapeXmlAttribute(resOut)}/drawable-xxhdpi" />

随后你就可以在新建的Module中看到初始化的drawable目录

2.2 方法2

与方法1的区别在于:不能在目录中添加初始化的图片

  • 进入 [androidstudio安装目录]/plugins/android/lib/templates/gradle-projects/NewAndroidModule/recipe.xml.ftl 文件
  • 添加如下代码,位置见图
    1
    2
    3
    <mkdir at="${escapeXmlAttribute(resOut)}/drawable-hdpi" />
    <mkdir at="${escapeXmlAttribute(resOut)}/drawable-xhdpi" />
    <mkdir at="${escapeXmlAttribute(resOut)}/drawable-xxhdpi" />
{% image http://images2015.cnblogs.com/blog/797098/201604/797098-20160414203911504-1281851192.png '' '' %}

随后你就可以在新建的Module中看到初始化的drawable目录

说明:
当然,通过类似的方式我们还可以在创建 Module 的时候做很多事情,比如:

  • colors.xml 文件中生成常用颜色
  • build.gradle 文件中生成自定义配置
  • .gitignore 文件中生成自定义忽略配置
    等等…

三、参考文章:

http://liukun.engineer/2016/04/10/Android-Studio-advanced-configuration/