在开发过程中咱们经常会遇到要依照规矩创立多个文件的状况,比方java的mvc、小程序的page、android的actiity、xml、model等状况…
你是不是还在一个文件一个文件的创立?如果是的话,能够看看这个文章..
完成作用
- 右键创立自定义模版
- 生成
Activity、ViewModel、Layout XML
完成步骤
1、翻开IDEA/AndroidStudio 设置
2、使用模版变量装备主文件
- 以下示例中,
PACKAGE_NAME
、USER
等是体系供给的,相关供给的变量在底部的Description中有说明。 -
Name、TITLE、LAYOUT
是体系未供给的,会在创立的时分弹出对话框让输入这些变量的值是什么。这个很关键 - 能够看到最底下,我主文件加了个
IF
判断了个LAYOUT_DIR_TO_PAGES
的变量,但是没有做任何处理。这是因为,等下创立子文件的时分需求用到这个变量但是又不想显现它,划重点:子文件共享主文件的变量
Activity 装备:
package ${PACKAGE_NAME};
import androidx.annotation.NonNull;
import com.sftpos.airportclear.R;
import com.sftpos.airportclear.common.BaseTopBarActivity;
import com.sftpos.airportclear.databinding.Activity${NAME}Binding;
import org.jetbrains.annotations.NotNull;
/**
* author ${USER}
* ${TITLE} Activity
*/
public class ${NAME}Activity extends BaseTopBarActivity<Activity${NAME}Binding> {
@Override
public int intiLayout() {
return R.layout.activity_${LAYOUT};
}
public ${NAME}Model model;
@Override
public void initView() {
model = new ${NAME}Model();
bind.setModel(model);
}
@NonNull
@NotNull
@Override
protected String getTitile() {
return "${TITLE}";
}
}
#if (${LAYOUT_DIR_TO_PAGES})
#end
ViewModel装备:
- 子文件共享主文件变量
package ${PACKAGE_NAME};
/**
* author ${USER}
* ${TITLE} ViewModel
*/
public class ${NAME}Model{
}
Layout XML 文件:
- 因为android的xml都在
res/layout
目录下,而模版文件的FileName
只能装备相对于主文件的路径,所以咱们需求一个变量来控制相对路径,我这里是以我项目中src/pages
为参阅,LAYOUT_DIR_TO_PAGES
传入相对于pages目录的../
来定位道res/layout
目录。终究以Layout
变量来设置布局文件称号。 - 能够看到咱们还凭借
PACKAGE_NAME
来自动绑定了ViewModel
<?xml version="1.0" encoding="utf-8"?>
<layout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools">
<data>
<variable
name="model"
type="${PACKAGE_NAME}.${NAME}Model" />
</data>
<androidx.constraintlayout.widget.ConstraintLayout
android:layout_width="match_parent"
android:layout_height="match_parent">
</androidx.constraintlayout.widget.ConstraintLayout>
</layout>
- 装备完毕后,右键目录 选择自定义的模版,输入变量参数就能够了~
以上是Android的一个页面创立模版演示,通过该装备,原本需求创立多个文件、修改各种称号、填入装备代码等繁琐流程都能够一步搞定了。
同理咱们能够装备各种项目所需求的模版装备.
弥补说明:一些低版本的IDEA、Android Studio不支持多文件模版。我这里试了试2020.3.1的版本开端就有了。
有多少人不知道这个功用的~!来报个道!
Thanks Youe~
8/300