Android Studio Live Templates使用详解,提高敲代码的速度

本文涉及的产品
播放器SDK+直播LIVE组合试用套餐,播放器+流量+转码 1个月
视频直播,500GB 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: Android Studio Live Templates使用详解,提高敲代码的速度

Android Studio Live Templates使用详解,提高敲代码的速度

转载请注明出处,大力哥的博客,大力哥的博客_大力-哥_CSDN博客

本篇将从 Live Templates简介,常用AS自带模板,自定义模板三个方面开展介绍,并且只介绍 Live Templates中Java代码方面的使用,其余感觉不是很常用,看完这篇之后你可以自己研究一下。

(温馨提示,本文图片较多建议在电脑上阅读)

一个好的程序猿应该是花更多的时间在处理业务处理上,而不是重复敲相同的代码,一行代码节约1s也是节约。看完这篇之后你会觉得AS确实越来越强大了,简直是Android程序猿的福音呀,希望推出更多提高开发效率的工具或插件。废话不多说,直接进入主题。


什么是 Live Templates

没有统一的翻译,代码模板、热键模板、动态模板随便叫哪个都行


作用

  • 代码快速补全
  • 提高写代码的速度


位置

  • Settings->Editor->Live Templates


用法

  • 全关键字型:关键字–>回车
  • 后缀关键型:使用对象.关键字–>回车


简单使用

先来两个效果图,吊一下胃口,更加实用的还在后面

AS自带模板

快速打印日志

logt –>快速补全TAG

loge—>快速补全Log.e(TAG,”“);

image.png

自定义模板

输入 sin 回车即自动补全单例模式所需的代码

image.png

系统自带模板

系统自带模板从两个方面讲解,全关键字型和后缀关键型,由于篇幅的原因,这里只讲解常用的一些模板,未讲解到的可以到 Settings->Editor->Live Templates中查看

全关键字型

先来说说什么是全关键字型,其实就是输入关键字–>回车,eg:输入loge 回车即会自动打印出

Log.e(TAG, "onCreate: ", );
  • 1
  • 1

findViewById

在此之前我们在Activity中找到一个view可能是这样写的:

image.png

有了fbc之后我们可以这样写:fbc 回车

image.png

定义常量

以前你写整形常量是不是要一个单词的敲出: private static final int 。。。

还有更快的写法:const 回车

image.png

字符串常量也有:key 回车

image.png

其他常量,目前as只提供了整形和字符串类型常量的模板,学了后面的自定义之后你就可以定义其他类型的了,当然还有一种捷径:psf 回车即可快速补全

public static final
  • 1
  • 1

for循环

相信很多小伙伴也觉得每次都要写整个for循环好麻烦,as提供了:fori 回车,看对比图

这里还有一个隐藏的模板,sout 回车 即可快速补全 System.out.printf(“”);

image.png

if判断

  • ifn 回车(推荐)

image.png

inn 回车

image.png

隐藏View

  • gone

image.png

快速在子线程中切换到主线程

  • rouiT

image.png

字符串格式化

  • Sfmt

image.png

快速实现自定义View的三个构造方法

  • ViewConstructors

个人觉得这个是一个非常实用的模板了,比快捷键还方面,不行你自己试试

image.png

OK 全关键字型就只讲这些常用的了,不常用的可以去设置中查看

后缀关键型

再来说说什么是后缀关键型,其实就是“使用对象.关键字–>回车”,继续往下看就知道是什么啦:

判断

  • .notnull
  • .null

image.png

局部变量

  • .var

image.png

全局变量

  • .field

这个也是一个非常实用的模板,在代码量非常多的类中就更加突出了,不用跑到来的最前面定义右跑回来初始化。

image.png

循环

  • .for 增强for循环
  • .fori 正序遍历
  • .forr 逆序遍历

image.png

还有针对下标的

image.png

return返回

  • .return

image.png

类型转换

  • .cast

image.png

抛出异常

  • .try

image.png

字符串格式化

  • .format

image.png

分支

  • .switch

image.png

后缀型的也只讲这些常用的了,快进入激动的自定义模板

自定义模块

我这里给出几个比较常用的自定义模板,如果你觉得有比较好的可以抽取出来的,欢迎留言。

单例模式

还是一开始就给出的单例模式,再来看看效果图:

image.png

是不是很带感,来看看怎么设置(建议先新建一个Template Group,便于管理):

image.png

然后点击 Edit variables

image.png

下面是单例模式的模板(根据个人写单例模式的习惯来)

private static $class$ m$class$ = null;
private $class$(){}
public static $class$ getInstance() {
    synchronized ($class$.class) {
        if (m$class$ == null) {
            m$class$ = new $class$();
        }
    }
    return m$class$;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10

来看看上面涉及到的知识:

image.png

更详细的Expression 介绍:Variables in live templates; variables in code snippets

Skip if defined : 如果选中,光标会直接跳到句末,不会停留在某个变量处。

click

image.png

模板:

public void onClick(View view) {
    switch (view.getId()) {
        case R.id.$resId$:
            $content$
            break;
        default:
            break;
    }
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

打印带定位功能的日志

新建 dl (名字自拟)为下面的模板

Log.e("$class$","$method$($class$.java:$line$)"+$content$);
  • 1
  • 1

image.png

image.png

为什么打印下面的代码就可以定位到指定类所在的行数呢?

Log.e("MainActivity","onCreate(MainActivity.java:13)我是日志内容");
  • 1
  • 1

告诉你一个小秘密,logcat中只要打印的内容中带有”(类名.java:行号)”就可以自动变为可点击的链接,点击之后就可以跳转到改类指定的行数。这样就实现了打印带定位功能的日志,但是这个是有一定的局限性的,比如打印语句之前很可能会增加代码,由于行数是固定死的,此时就会导致定位有一定的误差。怎么解决呢?这里推荐看一个日志打印的工具类,android studio日志打印神器,日志代码跟踪器ELog

Switch

快速搭建模式、防止漏掉break和default

switch ($content$) {
    case $value$:
        $code$
        break;
    default:
        break;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

image.png

字符串非空判断

这也是一个非常实用的模板了

TextUtils.isEmpty($content$);
  • 1
  • 1

image.png

最后

福利,这篇文章是本人在给组内同事培训时制作的ppt修改而来,我将ppt共享出来,如果你有这个需求也可以下来修改修改。

image.png

目录
打赏
0
0
0
0
570
分享
相关文章
|
4月前
|
Android Studio的插件生态非常丰富
Android Studio的插件生态非常丰富
207 1
Android Studio支持多种操作系统
Android Studio支持多种操作系统
214 1
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
81 36
当flutter react native 等混开框架-并且用vscode-idea等编译器无法打包apk,打包安卓不成功怎么办-直接用android studio如何打包安卓apk -重要-优雅草卓伊凡
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
54 4
【09】flutter首页进行了完善-采用android studio 进行真机调试开发-增加了直播间列表和短视频人物列表-增加了用户中心-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
使用idea中的Live Templates自定义自动生成Spring所需的XML配置文件格式
本文介绍了在使用Spring框架时,如何通过创建`applicationContext.xml`配置文件来管理对象。首先,在resources目录下新建XML配置文件,并通过IDEA自动生成部分配置。为完善配置,特别是添加AOP支持,可以通过IDEA的Live Templates功能自定义XML模板。具体步骤包括:连续按两次Shift搜索Live Templates,配置模板内容,输入特定前缀(如spring)并按Tab键即可快速生成完整的Spring配置文件。这样可以大大提高开发效率,减少重复工作。
使用idea中的Live Templates自定义自动生成Spring所需的XML配置文件格式
Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍
本文深入探讨了Flutter前端开发中的调试技巧与工具使用方法,涵盖调试的重要性、基本技巧如打印日志与断点调试、常用调试工具如Android Studio/VS Code调试器和Flutter Inspector的介绍,以及具体操作步骤、常见问题解决、高级调试技巧、团队协作中的调试应用和未来发展趋势,旨在帮助开发者提高调试效率,提升应用质量。
97 8
Android远程连接和登录FTPS服务代码(commons.net库)
Android远程连接和登录FTPS服务代码(commons.net库)
65 1
【Live555】Live555 Windows下使用VS2017编译教程
【Live555】Live555 Windows下使用VS2017编译教程
【Live555】Live555 Windows下使用VS2017编译教程
live555开发笔记(一):live555介绍、windows上msvc2017编译和工程模板
live555开发笔记(一):live555介绍、windows上msvc2017编译和工程模板
live555开发笔记(一):live555介绍、windows上msvc2017编译和工程模板

热门文章

最新文章

  • 1
    Android历史版本与APK文件结构
    15
  • 2
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
    22
  • 3
    APP-国内主流安卓商店-应用市场-鸿蒙商店上架之必备前提·全国公安安全信息评估报告如何申请-需要安全评估报告的资料是哪些-优雅草卓伊凡全程操作
    11
  • 4
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    4
  • 5
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    3
  • 6
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
    7
  • 7
    escrcpy:【技术党必看】Android开发,Escrcpy 让你无线投屏新体验!图形界面掌控 Android,30-120fps 超流畅!🔥
    4
  • 8
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
    2
  • 9
    即时通讯安全篇(一):正确地理解和使用Android端加密算法
    11
  • 10
    Android实战经验之Kotlin中快速实现MVI架构
    12
  • AI助理

    你好,我是AI助理

    可以解答问题、推荐解决方案等