Android Studio模板之代码片段
来源:互联网 发布:农村网络信息 编辑:程序博客网 时间:2024/05/17 22:41
Android Studio模板之代码片段
来这里找志同道合的小伙伴!
代码片段是Template上的最小单位,因此它也具有最大的灵活性,支持多参数配置、TAB切换、代码块包装等多种特性(IDEA同样适用)。
下面先直接上几张演示效果图
创建一个单例类
写一个将InputStream转化为String的方法
生成main方法并打印数字
用try catch来包装代码块
上面的这些有的是IDE自带的,有的是自定义的。具体位置我们可以进入IDE,Preserences,Editor,Live Templates,我们可以在右边栏看到一些列IDE预设的template,如下图
这里我们展开Android,可以看到下图
这里面所有的我们都可以使用,括号后面的内容是为了描述该模板的,你也可以取消前面的勾选来取消该模板。
其实系统预设的有很多都是很实用的,有兴趣的可以去试一试,不多说。这里主要看一下如何自定义模板,把一些常用的代码片段DIY到自己的模板库中,当下次再需要同样代码的时候只需要一个标识符就能迅速自动生成。
我们点击右上角的加号,我们可以看到两个选项一个是Live Template,这个表示一个模板,另一个是Template Group,这个表示一个模板所属的分组,就像上面看到的Android,它就属于一个分组。
接下来我们先创建一个自己的Template Group,名称随便取,不要与已有的分组重名就行,这里就取为Custom。然后我们选中新建的这个Custom分组再创建Live Template,会看到如下界面
我对这个界面做了数字标志,大致说下每个区域代表的含义
区域1:表示模板的缩写,也是我们最终使用时在编辑区输入的指令
区域2:表示模板的提示,当输入对应缩写时,就会弹出这个提示
区域3:这里就是最关键的模板区了,模板区包含两部分,一个是模板内容,它可以是任意字符串,另一个是模板变量,它有自己特殊的含义并且格式固定,首尾都是”$”符。模板变量又包含预设变量和自定义变量,比如”$END$”就是一个预设变量,它指定了模板导入结束后鼠标光标最终要停留的位置,而自定义变量则表示模板中一些动态性的部分,比如类名,它在不同的类中引入的结果是不同的。在多个自定义变量的情况下引入模板时,默认按TAB键切换至下个自定义变量位置。
区域4:自定义变量的配置入口,可以给我们的自定义变量添加一些约束条件
区域5:指定该模板的作用域,例如指定用于Java还是groovy等等
区域6:提供一些引入模板的可选操作
这里我们来写一个生成单例的模板,我们按照下图定义好缩写,描述与模板内容
模板内容的代码如下
private static final byte[] sInstanceLock = new byte[0];
private static $className$ sInstance;
private $className$() {
}
public static $className$ instance() {
if (sInstance == null) {
synchronized (sInstanceLock) {
if (sInstance == null) {
sInstance = new $className$();
}
}
}
return sInstance;
}
然后我们选择区域4来编辑我们的自定义变量,我们进去后可以看到如下弹窗
Name为自定义的变量名称
Expression表示系统提供的一些方法
Default value为改变量的默认值
Skip if define勾选后,如果该变量被赋值则跳过,相当于引入过程中一次手动的TAB
接着我们在Expression中选择className(),并勾选Skip if define,并点击确定
最后我们点击区域5来选择模板的作用域,我们选择Java—Declaration
然后保存,我们的单例模板便生成成功了。测试下,在IDE中新建个Java类,在类的内部输入single便出现最上面的那个UserManager的效果。
当然除此之外还有使用”$SELECTION$”来包装代码块的模板,这个使用场景相对较少这里就不举例了,主要使用的就是这种直接的模板模式。感觉一些常用的,特别是工具类中静态方法相关的,我们都可以抽取成模板,提高开发效率。
感谢 Puke同学投稿,Blog地址:
https://puke3615.github.io/
如果对您开发有帮助,欢迎在作者的 Blog 给个Star 也可以分享给小伙伴哦; 小编每天都兢兢业业的为整理干货,支持小编在下方给鼓励+1,需要投稿与及有疑问的小伙伴可以在下方留言,小编会第一时间与您联系!
大家都在看
安卓巴士首次空降杭州 开年第一期沙龙完美落幕
少年,老夫带你撸一把Android项目框架,你可想学?
Android仿今日头条的开源项目
程序员不爽项目经理的10点【Bus Weekly】四十期
戳原文,更有料!
热门关注
搜生活+关注
搜狐公众平台官方账号
MAGIC杨梦晶+关注
生活时尚&搭配博主 /生活时尚自媒体 /时尚类书籍作者
搜狐教育+关注
搜狐网教育频道官方账号
星吧GEO+关注
全球最大华文占星网站-专业研究星座命理及测算服务机构
- 最新评论
- 你收到0条新通知
- 你有0条评论收到赞同
- 你有0条新回复
- 本日畅言热评新鲜出炉啦!
- 你有0个任务已完成
- 你收获0个畅言足迹
- Android Studio模板之代码片段
- 代码片段 Xcode & Android Studio
- android studio 代码模板
- android studio 代码模板
- 强大的Android Studio之省时开发--代码模板
- Android Studio设置代码模板
- android studio 注释-代码模板
- Android Studio自定义模板代码
- Android Studio自定义模板代码
- 【Android代码片段之四】设置全屏
- Android开发之常用代码片段
- Android开发之常用代码片段
- Android开发之常用代码片段
- Android开发之常用代码片段
- Android开发之常用代码片段
- Android之常用代码片段收集
- Android开发之常用代码片段
- Android Studio 自定义注释&快速输入代码片段
- 最近弄魔窗SDK踩过的坑
- java学习日志(二)---实验1
- 更改input等的默认样式
- 机器学习 数据挖掘知识点总结大纲
- SQL语句查询出现异常,SQL语句:... GUID 应包含带 4 个短划线的 32 位数(xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx)。
- Android Studio模板之代码片段
- 黑马云计算视频教程
- BootStrap 模态框禁用空白处点击关闭
- 第七章 类 答案
- Fantastic.Farm.v1.03.Spanish-RAiN
- arcgis10.2做等值线图制作方法
- cmake添加目录
- Xcode编译报错duplicate symbol _base64Decode in:
- webrtc编译过程