AndroidStudio模板简介

来源:互联网 发布:大数据需要学哪些技术 编辑:程序博客网 时间:2024/06/11 01:46

AndroidStudio模板简介

概述

很多时候Android开发者会觉得每天都在敲一些重复的代码非常枯燥。findViewById、setVisibility、判断是否为空、instanceof、for循环、intent跳转,看到这些东西就想吐了有木有!还好AndroidStudio给开发者提供了一套机制,让我们不需要一字一句的重复敲打这些代码,这就是模板

顾名思义,模板就是事先制定一些规则,我们只需要敲一个快捷键或几个字母,就可以自动将整个命令补齐。它比AS的代码自动提示功能更加方便~模板主要分为两种:文件模板Live模板。下面就来着重介绍一下这两类模板。

文件模板

文件模板听起来陌生,实际上我们每天都在使用它。比如我们创建一个class文件,文件中会自动给出如下样式的代码:

package <package name>;/** * Created by Administrator on 2017/9/3. */public class <class name> {}

再比如我们在drawable文件下创建一个资源文件,文件中会给出如下代码:

<?xml version="1.0" encoding="utf-8"?><selector xmlns:android="http://schemas.android.com/apk/res/android"></selector>

这些都是编译器已经给我们制定好的文件模板,我们也可以自定义文件模板。快捷键Ctrl+Alt+S,呼出Settings菜单,选择Editors->Code Style->File and Code Templates选项卡,如下图所示:

文件模板

比如我们想修改java文件的头注释,可以选择右侧Includes选项卡,选择File Header,将其中的注释换成我们自己想要的内容即可。我们可以在其中设置动态内容, 正如Description中介绍的:

${PACKAGE_NAME}:文件所在的包名${NAME}:文件名${USER}:当前用户系统登录的名称${DATE}:当前系统日期${TIME}:当前系统时间${YEAR}:当前年(数字)${MONTH}:当前月(数字)${MONTH_NAME_SHORT}:当前月份缩写(英文字母前三位),例如:Jan, Feb${MONTH_NAME_FULL}:当前月份全称(英文字母),例如:January, February${DAY}:当前月份中的某天${HOUR}:当前小时${MINUTE}:当前分钟${PROJECT_NAME}:项目名称

举个栗子,我们自定义一个Java文件头注释如下:

/** * Copyright (C), ${YEAR}, TECHNOLOGES CO., LTD. *  * @author XXXX * @ClassName: ${NAME} * @Description: * * Version 1.0.0, ${YEAR}-${MONTH}-${DAY}, XXXX create file. */

XXXX的部分替换成开发者自己的名字,之后每次新建java文件就会发现头注释变成了我们自定义的样式,比默认的注释专业多了有木有~

Live模板

点击Ctrl+J快捷键呼出编译器默认的Live模板,里面的模板非常详尽,平时我自己用的比较多的是如下几个:

I: foreach循环foreach:for循环ifn:判断是否为空inn:判断是否不为空visible:设置视图可见gone:设置视图不可见inst:instanceof判断IntentView:intent跳转rgS:从string资源文件中获取字符串todo:添加TODO注释fixme:添加FIXME注释

我们也可以自定义Live模板,快捷键Ctrl+Alt+S,呼出Settings菜单,选择Editors->Code Style->Live Templates选项卡,点击右侧的”+”,添加自定义模板组和模板,如下所示:

Live模板

举个栗子,我们自定义一个Intent的Live模板,只要输入”IntentForResult”,就可以自动实现startActivityForResult方法的相关代码,如下所示:
IntentForResult

Abbreviation就是我们快捷输入的规则,建议不要定义和代码智能提示相近的缩写,这样会引起不必要的麻烦。Description填写的是该模板的介绍,可选。Template text就是实际输出的内容,其中被$符号包围的参数需要我们在代码中手动补充完整。最关键的是最下方的Define按钮。它决定了我们在什么地方按下Ctrl+J可以呼出自定义的模板规则,通常情况下我们可以选择在java文件的所有位置都支持此规则。Define设置如下所示:
Define设置

设置完成后,我们在java文件的任意位置使用Ctrl+J呼出Live模板菜单,输入”IntentForResult”,回车,就可以输出我们想要的完整代码啦~

大家可以整理一下平时比较常用且繁琐的代码,全部定义到Live模板当中。妈妈再也不担心我敲重复代码会吐了~~

原创粉丝点击