提升效率之Templates/screenshot/so%20many%20class.png?raw=true)
#####解决方案
套用定义好的代码Templates,自动生成各个职能类。
提升效率之Templates/gif/auto%20create%20classes.gif?raw=true)
模版地址: https://github.com/listen2code/Test_MVPVM/tree/master/doc/MvpvmComponent
#####使用介绍
1.将写好的templates拷贝到本地
Android Studio.app/Contents/plugins/android/lib/templates/activities/
2.重启AndroidStudio,右键项目->New->Activity->MvpvmComponent
3.在打开的编辑页面输入ActivityName和layoutName,包名为”com.listen.test_mvpvm”
提升效率之Templates/screenshot/how%20to%20use-2.png?raw=true)
根据Templates自动生成的类
提升效率之Templates/screenshot/classes_generate.png?raw=true)
1 | |
1 | |
1 | |
1 | |
#####Templates介绍 Templates由3个xml描述文件,和一堆.flt文件组成。
提升效率之Templates/screenshot/template2.png?raw=true)
globals.xml.ftl:主要用于定义一些全局变量,正常如果要自定义模版的话,globals文件可以直接拷贝过去,不需要什么改动。
1 | |
template.xml:我们在新建模版时,会有个填写信息的页面,template文件主要用于描述该页面上的元素信息。
提升效率之Templates/screenshot/how%20to%20use-2.png?raw=true)
1 | |
recipe.xml.flt:将root目录下的.flt文件解析成.java文件,并打开。
1 | |
MvpActivity.java.flt文件示例,引用template中的 “@{activityClass}”,”${activityLayoutName}”,就是在输入页面填写的ActivityName,和layoutName。将”@{}”解析后生成完整的Activity.java。其实Templates的原理,就是将你需要生成的java文件的公用部分抽取出来,用”@{}”占位符,替代会变化的keyWord,写成一个个.flt模版文件,同时在输入面板中将keyWord输入,并通过template.xml,recipe.xml等描述文件,最终合成我们需要的java文件。
1 | |
通过定义Templates,在每次新建一个页面时节省了大量重复的类创建工作,我们可以运用Templates定义各种页面模版,可以大幅度的提升开发效率。在日常工作中,应该尽可能减少一些纯体力的,重复的代码拷贝。不过为优化,为解耦而增加再多类,分再多模块都是值得的。
Templates更详细介绍可以参考鸿洋的文章,这里不做赘述:http://blog.csdn.net/lmj623565791/article/details/51635533