一、背景:
在工作中,总是要写一些重复的代码,特别是项目有相关规范时,就会产生很多模版代码,每次要么复制一份,要么重新写一份新的,很麻烦,于是我就在想,能不能像创建一个activity或者通过写一些关键词,然后生成常用的代码模版呢,答案是肯定的
二、关键词生成代码模版:
首先打开File->Setting设置,选中LiveTemplates选项,再点击"+"号,选中2,点击ok,可以看到下面的弹窗:
输入名字,便可以得到一个自定义组,如上面的Android,建好组后,选中,然后再次点击"+"号,选择1,点击ok,可以看到下面的弹窗:
1代表关键词的名字,2是关键词生成代码的功能描述,3可以控制在哪些地方可以使用关键词生成代码,如xml、java、kotlin等,4表示关键词输入后点击回车键生成代码,中间Template text里的内容就是该关键词要生成的代码,你可以自由设置,完成之后点击ok,在关键词生效的地方输入该关键词,然后按回车,就会立刻生成你设置的模版代码
三、像activity一个通过选项生成一个代码文件:
如上图,还是先打开设置面板,找到左侧选项,点击"+"号,输入name,和生成文件的扩展名(kotlin就是kt,java就是java),再在下面面板里输入模版代码,最后点击ok即可,这样右键单击new就会出现相应的选项:
单击对应选项比如dialog,就会弹出下面弹窗:
输入名字后点击ok就会生成你设置的模版代码文件了,下面是我设置的代码文件模版,可以参考下:
#if (${PACKAGE_NAME} && ${PACKAGE_NAME} != "")package ${PACKAGE_NAME}
#end
import android.content.Context
import android.graphics.Color
import android.view.Gravity
import android.view.View
import org.libpag.PAGFile
#parse("File Header.java")
class ${NAME}(context: Context) : BaseDialog(context) {
private lateinit var binding: DialogBinding
init {
setBackgroundColor(Color.parseColor("#B3000000"))
isOutSideTouchable = true
setOutSideDismiss(true)
popupGravity = Gravity.CENTER
setContentView(R.layout.dialog_get)
}
override fun onViewCreated(contentView: View) {
super.onViewCreated(contentView)
binding = DialogBinding.bind(contentView)
binding.getSoundBean.setOnSingleClickListener {
dismiss()
}
}
fun setData(beanCount: Int = 0) {
binding.soundBeanReward.text = R.string.sound_beans_with.text(beanCount.toString())
}
}