Android Studio 之 Live Templates 高效利用

在编辑器中使用用Ctrl + J 快捷键可以调出Live Templates,可以自动补全所设置模板的代码,善用它能够在很大程度上减少开发所需时间。


设置位置

  • Settings - Editor - Live Templates

Live Template 语法

可以为每个Template指定名字和语句(废话),并且指定适用的文件类型和语句块(修改底部的Applicable in … 即可)

在语句中使用$...$ 表示待输入的变量(字符串内也可以用),你在每次输入的时候相同的变量会一起改变。(如在语句中含有两个$i$,则你使用模板时改变其中一个的值,另一个也会一起改变) 
可以使用Edit Variable 对它进行一部分修改,它可以修改以下部分

Name Expression Default value Skip if defined
你所定义的所有$...$ 为变量赋特殊值 默认值 使用时是否跳过编辑

Expression内有很多供使用的非常方便的函数,如className(), methodName()等等。设置Expression后别忘了勾选Skip if defined, 这样在使用的时候光标就不会再停留在这个变量处。

常用Android模板示例

findViewById 以下所有$cast$变量的expression值均为expectedType().

Name Template Text
fdv findViewById(R.id.$resId$);
fdvc ($cast$) findViewById(R.id.$resId$);
fdv_child $root$.findViewById(R.id.$resId$);
fdvc_child ($cast$$root$.findViewById(R.id.$resId$);

示例: 
这里写图片描述

Bitmap初始化 $resource$ 设置defaultValue为"getResources()"

Name Template Text
bmp_res Bitmap $var$ = BitmapFactory.decodeResource($resource$, R.id.$resId$);

示例: 
这里写图片描述

Log 
以下$method_name$ 的expression值为 className()$method_name$ 的expression值为methodName() 。

Name Template Text
tag private static final String TAG = “$class_name$”;
ld Log.d(TAG, “$method_name$” + $content$);
li Log.i(TAG, “$method_name$” + $content$);
le Log.e(TAG, “$method_name$” + $content$);
lv Log.v(TAG, “$method_name$” + $content$);
lw Log.w(TAG, “$method_name$” + $content$);

示例: 
这里写图片描述

For循环

Name Template Text
feach for ($i$ : $data$) { 
$cursor$ 
}
fiter for ($i$=$start$$i$<$end$$i$++) { 
$cursor$ 
}
fiter_with_init for (int $i$=$start$$i$<$end$$i$++) { 
$cursor$ 
}

示例: 
这里写图片描述

常量定义

Name Template Text
ci public static final int $VAR$ = $VALUE$;
cs public static final String $VAR$ = $VALUE$;

注意不要把Live Template的名字命名得和常用变量名太像,因为不点击Ctrl+J 时输入模板名字+TAB同样也会调出模板,若和常用的变量如(Bitmap, int, string等)命名相近会造成不必要的麻烦。 
现在你可以调用这些模板了,快去定义自己喜欢的各种模板吧!

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值