close
当前位置: 物联网在线 > 技术文库 > android >

AndroidStudio模版

AndroidStudio模版可以很快捷的开发项目,增加开发效率,也能对项目的规范有一定的限制,也不用每次都写一些重复的代码,也能避免一些不必要的Bug出现,只需要注重具体代码实现就好.

二、模版展示

创建一个新项目时用的模版,可以在这里选择你需要加入的一些开源库,项目创建后,模版会自动把已配置好的开源库加入到项目中。

AndroidStudio模版

项目创建后,模版已附带了两个基类,BaseActivity和BaseFragment,基类的内容可自行修改。

AndroidStudio模版

Activity也是默认继承了BaseActivity

AndroidStudio模版

build.gradle也自动添加上了我所选中的开源库

AndroidStudio模版

三、模版编写

一、模版目录介绍

我们AndroidStudio也有自带一些模版,比如:

AndroidStudio模版

模版地址在:AndroidStudio\android-studio\plugins\android\lib\templates\activities

AndroidStudio模版

这里的每个模版打开后就是以下的目录。

AndroidStudio模版

root : 这个文件夹是存放模版需要生成的代码以及资源

globals.xml.ftl : 这个是用于定义整个模版中的全局变量的,在其他文件中可以引用此文件夹的变量

recipe.xml.ftl : 这个文件是用于指定你需要生成的资源,代码最终的目的地的,具体的下面说明

template.xml : 这个文件是用于定义创建这个模版的那个窗口的,之前我的窗口上不是有让我们输入类名,选择要加入的库吗,这个文件就是定义那些多选框和编辑框的。

template_blank_activity.png : 这个就是创建模版时跟随的那张图片,你可以替换成其他图片

二、文件具体说明

第一步:template.xml

此文件是用于定义创建模版的窗口的显示样式。

AndroidStudio模版

//parameter这个元素, //id 可用于其他文件获取此控件值时所用, //Name 用于控件的名字 //type 用于规定此控件的输入类型 //help 用于当点击此控件时,给予的提示消息,其他的自己琢磨,我也不是很清楚 <?xml version="1.0"?> <template format="5" revision="5" minApi="9" minBuildApi="14" description="新建Activity"> <category value="Activity" /> <formfactor value="Mobile" /> <!--类名三类: 第一类 是Activity 第二类 是Presenter 第三类 是View--> <parameter type="string" constraints="class|unique|nonempty" suggest="${layoutToActivity(layoutName)}" default="MainActivity" /> <parameter type="string" constraints="layout|unique|nonempty" suggest="${activityToLayout(activityClass)}" default="activity_main" help="这里可以输入布局名字" /> <parameter type="string" constraints="package" default="com.mycompany.myapp" /> <parameter type="boolean" default="false" help="If true, this activity will have a CATEGORY_LAUNCHER intent filter, making it visible in the launcher" /> <!-- 128x128 thumbnails relative to template.xml --> <thumbs> <!-- default thumbnail is required --> <thumb>template_blank_activity.png</thumb> </thumbs> <globals file="globals.xml.ftl" /> <execute file="recipe.xml.ftl" /> </template> ipe.xml.ftl" /> </template>

第二步:globals.xml.ftl

这个文件定义了整个模版总需要用的变量,其他文件都可以引用此文件中的变量进行操作

<?xml version="1.0"?> <globals> <global type="boolean" value="false" /> <global value="" /> <global value="${layoutName}" /> //此变量引用了template.xml里面的布局文件名字 <global type="boolean" value="true" /> <global type="boolean" value="false" /> <global type="string" value="${activityClass}" /> //此变量引用了template,xml里面的类名 <#include "../common/common_globals.xml.ftl" /> </globals>

第三步:root

root下面包含了需要生成的代码或者资源,后缀都已 .ftl 结尾。

AndroidStudio模版

下面是需要生成的Activity类,包名用 ${packageName}指定,${}里面可以是globals.xml里面定义的变量也可以是template.xml中定义的id

package ${packageName}; import android.os.Bundle; import android.support.annotation.Nullable; import android.support.v7.app.AppCompatActivity; import android.widget.Toast; public class ${activity} extends AppCompatActivity { @Override protected void onCreate(@Nullable Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.${simpleLayoutName}); Toast.makeText(getApplicationContext(), "我是一个模版Activity", Toast.LENGTH_SHORT).show(); } }

第四步:recipe.xml.ftl


(责任编辑:ioter)

用户喜欢...

用AndroidStudio开发自定义 Gradle plugin

利用AndroidStudio,编写自定义Gradle plugin MavenDeployer 发布plugin 使用Gradle plugin 简介 项目中引入自定义Gradle plugin一般有三种方法: 直接写在 build.gradle中. plugin源码放到rootProjectDir/buildSrc/src/main/groo...


手把手教你AndroidStudio多渠道打包

最近不断有朋友向我咨询AndroidStudio多渠道的打包方法,今天整理一下之前积累的打包套路,写一篇文章,手把手的教给大家。 说到多渠道,这里不得不提一下友盟统计,友盟统计是大家日常...


AndroidStudio之如何使用aar

aar 是一个类似于 jar 的文件格式。但是他们之间是有区别的。 jar :仅仅包含class和清单文件,没有资源文件。 aar :包含了class文件和资源文件。说白了就是Android的专属“jar” 将代码打包成...


AndroidStudio的Gradle插件版本更新简介

Android构建系统使用Android的Gradle插件通过Gradle的构建工具来支持构建Android程序。Android的Gradle插件独立于AndroidStudio运行,所以该插件和Gradle构建系统需要独立更新。 更新Android的Gradle插件 自动...


打造酷炫AndroidStudio插件

前面几篇文章学习了AndroidStudio插件的基础后,这篇文章打算开发一个酷炫一点的插件。因为会用到前面的基础,所以如果没有看前面系列文章的话,请先返回。当然,如果有基础的可以忽略...