Android Studio Arctic Fox使用文件模板时如何指定布局文件的绝对路径?
Android Studio Arctic Fox 2020.3.1 patch3 Fragment模板指定布局生成路径解决方案
核心解决思路
Android Studio的文件模板支持内置路径变量,你只需要修改Fragment模板中布局文件的输出路径配置,即可指定布局生成到标准res/layout目录下,无需和Fragment源码放在同目录。
方案1:修改系统内置Fragment模板
- 打开Android Studio顶部菜单栏,选择
File→New→Edit File Templates - 在弹出的窗口中切换到
Other标签页,找到Fragment分类下的布局生成子模板 - 将子模板默认的输出路径配置,替换为
${MODULE_DIR}/src/main/res/layout/${LAYOUT_NAME}.xml,其中${MODULE_DIR}是IDE内置变量,会自动匹配你当前选中的Module根目录(比如你选择app Module,就会定位到app文件夹根路径) - 保存配置即可生效
方案2:自定义Fragment模板(避免修改内置模板导致后续升级异常)
- 同样打开
File→New→Edit File Templates,切换到Files标签页 - 点击左上角加号新建模板,命名为 自定义带布局Fragment,选择对应的代码语言(Kotlin/Java)
- 编写Fragment的基础代码模板,引入
${FRAGMENT_NAME}、${LAYOUT_NAME}等自定义变量 - 点击右侧加号新增子模板,专门用于生成布局文件,子模板的输出路径固定填写
${MODULE_DIR}/src/main/res/layout/${LAYOUT_NAME}.xml,内容写基础的布局根节点代码即可 - 保存配置后,后续新建Fragment直接选择你自定义的模板即可
注意事项:
- 多Flavor项目可以根据需求修改路径中的
main为对应Flavor名称,比如${MODULE_DIR}/src/preview/res/layout/${LAYOUT_NAME}.xml- 创建Fragment时要确认选中的目标Module正确,否则
${MODULE_DIR}会定位到错误的根路径
内容的提问来源于stack exchange,提问作者RedSIght
相关产品推荐
相关产品推荐

