Android Studio Getter & Setter Template

众所周知Android Studio基于开源版的Intellij IDEA,因而具有极其便利的代码辅助功能,其中Getter & Setter生成就是其中之一,然而在Android开发时,因为Code Style for Android 规定私有的成员变量以“m”,静态私有成员变量以“s”开头的驼峰法命名:

Follow Field Naming Conventions

Non-public, non-static field names start with m.
Static field names start with s.
Other fields start with a lower case letter.
Public static final fields (constants) are ALL_CAPS_WITH_UNDERSCORES.

然而这在使用Android Studio默认的Getter & Setter 生成时会出现类似这样的情况:

插件AndroidAccessors可以处理Android代码规范生成Getter Setter这种情况,然而这个插件并不完美。而且Idea本身的getter setter生成规则是可以通过模板文件设置的,所以我们完全可以通过添加自定义规则的方式来实现Android编码规范的Getter Setter生成。

以下就是Android Studio默认的Getter及Setter模板:

Getter – Intellij Default

Setter – Intellij Default

Setter – Builder

可以看出这是某种模板引擎语言,请教了“撸大神”,被告知应该是Velocity模板引擎,原谅我的无知健忘,竟然一点印象都没有。

然后我们需要做的就很简单了,依葫芦画瓢,在原处理的基础上在进一步将$name做去除s及m前缀处理即可得到想要的结果,我定义了Getter:Android,Setter:Android、AndroidBuilder三个模板。以下附上自定义模板源码:

Getter:Android

Setter:Android

Setter:AndroidBuilder

附上Github Gist 地址: https://gist.github.com/ligboy/0eae9ecffc694595d40e

  1. 关于Velocity https://github.com/putaoshu/jdf/blob/master/doc/core_vm.md

发表评论

电子邮件地址不会被公开。