Android(安卓)模板编写
16lz
2021-12-04
AndroidStudio自带模板位置
- Mac下:
Applications/Android Studio.app/Contents/plugins/android/lib/templates
- Windows下:
/plugins/android/lib/templates/
以创建MVPFragment为例创建自己的模板
创建MVP需要创建MVPContract和MVPPresenter的默认实现,所以需要额外创建两个源代码文件。MVPContract.java 和MVPPresenter.java,同时需要绑定Contract和Presenter的名称和Fragment一致。
- 找到AndroidStudio自带模板中的BlankFragment模板拷贝一份命名为MVPFragment。模板地址:
Applications/Android Studio.app/Contents/plugins/android/lib/templates/other/BlankFragment
- 添加参数
- 找到MVPFragment文件夹下的文件 template.xml
- 修改模板名称
找到标签下的
name
修改为你想要的名称 例如:Fragment(MVP) - 添加对Contract和Presenter文件的描述参数
- 修改模板名称
- 找到MVPFragment文件夹下的文件 template.xml
id: 是唯一的变量,后面代码中可以通过$contractName}来获取他的值
default:是默认Contract的名称,可以通过${underscoreToCamelCase(classToResource(className))}Contract
来进行修改
- 创建代码模板
打开MVPFragment文件夹下面的/root/src/app_package
创建模板文件:
MVPContract.java.ftl
package ${packageName};public interface ${contractName} { interface Presenter { void subscribe(); void unsubscribe(); } interface View { void setPresenter(Presenter presenter); void showLoading(); void hideLoading(); void updateView(); }}
MVPPresenter.java.ftl
package ${packageName};import io.reactivex.disposables.CompositeDisposable;public class ${presenterName} implements ${contractName}.Presenter { private ${contractName}.View mView; private CompositeDisposable mDisposable; public ${presenterName}(${contractName}.View view) { mView = view; mView.setPresenter(this); mDisposable=new CompositeDisposable(); } @Override public void subscribe() { } @Override public void unsubscribe() { mDisposable.clear(); }}
- 关联模板文件
打开MVPFragment 文件夹下的recipe.xml
文件
照着Fragment.java 的创建方法创建Contract和Presenter
代码如下:
到此MVPFragment模板创建完成。重启AndroidStudio创建Fragment你就会看到MVPFragment。
更多相关文章
- NPM 和webpack 的基础使用
- 【阿里云镜像】使用阿里巴巴DNS镜像源——DNS配置教程
- android使用pull解析器来解析和生成xml文件
- android从服务器下载文件(php+apache+win7+MySql)
- android引入so文件常见问题
- Android动画效果——X、Y轴抖动
- Android(安卓)常用组价申明及使用简集
- Android开机启动分析(一)logo的显示
- 自定义控件attrs文件里的属性