工欲善其事,必先利其器。居是邦也,事其大夫之贤者,友其士之仁者。最新认真解读了这段话感触颇深,古人大智,不细说后面那段了,单说前面那段。本文讲述了如何使用Android studio的快捷键和Live Template功能各种解放双手。网上也有很多类似的介绍,但是看了都不够详细全面,所以我带着各种gif图再来一次(流量慎入)。
Paste_Image.png首先来说说Android studio改键。
以前玩WOW的时候,我会把最常用的技能设置成滚轮上滚下滚,这这么上下滚,脸滚鼠标打BOSS。本文将介绍Android studio改键,模板,以及一些常用的设置和比较快捷的代码习惯。
虽然Android studio也能设置滚轮,但是目前我还没有发现哪个快捷键适合用滚轮来设置。
下面将以Mac为例,其实都是通用的。
还有一些其他的提升效率的方式,请看这篇:
Android开发提升效率的工具、插件、心得集锦(gif动画演示)
改键姿势
Android studio提供了好几套快捷键模板,首先我们先选择一个最接近于使用习惯的模板来操作:
找到设置中的keymap,选择一个常用的,比如Eclipse(Mac OS X)点击copy,然后就可以开始修改快捷键了。
我们可以通过目录或者搜索的方式找到我们想要修改的快捷键:
比如想要修改Save as Live Template,可以通过目录查找到或者右上角的搜索查找到。
已经找到了想要修改的快捷键,双击该条目,会出现想要的菜单,分别是:
1、添加按钮快捷键
2、添加鼠标快捷键
3、添加缩写(后面会有介绍)
4、移除设置过的快捷键(修改过快捷键后才会出现)
5、移除设置过的快捷键缩写(修改过快捷键缩写后才会出现)
6、重置快捷键(对该快捷键做过修改后会出现)
下面详细介绍一下:
1、添加按钮快捷键
点击后会出现如下界面,这里注意的是重新设置的快捷键需要同时按下。
另外一个注意点是,如果设置的新键位与其他键位冲突会提醒,是否删除其他原有的键位,这里就需要各人自己判断了。个人经验是如果特别确定其他键位不常用或者即将修改,最好不要轻易的删除其他键位。
Paste_Image.png新的快捷键设置好后就可以上天了。
2、添加鼠标快捷键
点击后会出现如下界面,通过这个可以设置成类似最常见的代码跳转:cmd+左键(mac)/ctrl+左键(win)的快捷键方式。
这里可以鼠标左键点击,鼠标右键,鼠标的中键,单击双击。最棒的是滚轮上滚下滚也可以设置,配合功能键,会出现非常多的奇妙组合,以前打游戏时脸滚鼠标的操作这里也可以。比如cmd+下滚
Paste_Image.png3、添加缩写
介绍这个功能之前首先先介绍一个功能:Find Action,上图:
这个功能是可以搜索所有的功能的一个功能,可能有点绕,快捷键其实也只是Android studio中一个Action的快捷方式,如果我们知道这个Action,其实是可以通过这个Find Action来找到它,所以理想状态下,如果你熟悉所有的Action,理论上只要设置一个快捷键就行,就是这个Find Action。不过这样其实也不是最快最方便的,还是看情况使用,我现在的使用习惯是频次较高的一些功能都使用原生的或者自定义的快捷键,一些频次较低的通过Find Action。
那么这个添加缩写是干什么呢:
还是刚才的Save as Live Template,如果不设置缩写,我在搜索的时候需要搜索Save as Live Template,但是如果设置了它缩写为st,直接搜索st即可:
重置之类的就不多说了,另外具体的哪个功能改成什么样就因人而异了,这个还真没办法给出特别具体的建议,如果我说改成这样会很方便,但是别人会觉得不习惯,甚至不同的人键盘敲击的姿势也是不一样。
另外还有一个问题,我修改的快捷键到了其他电脑上难道还要重新设置一遍?
我们可以导出设置,然后在另外一台电脑导入设置就行了。
这里需要注意的是,导出时会有很多的设置选项,需要注意是否所有的设置都导出,还是只导出keymap。
说了半天Save as Live Template,这个功能又是什么呢?下面将介绍一些的功能。
Live Template
Save as Live Template,就是将一段代码设置成Live Template,Live Template(以下简称模板)是什么呢,很多同学可能已经知道了,希望能帮助到不知道的同学,上图:
live template.gif为了更方便理解,演示一些平时用到的例子:
live 2.gif这里着重介绍一下Live Template功能:
gif图中的使用效果已经看见了,但是里面设置的$VAR1$,$END$是什么意思呢?这些是设置模板时的参数,设置后使用模板的时候光标会停在对应的参数位置,按下tab或者enter后会跳转到下一个光标处。不管是java代码中,还是xml中都可以设置模板。
如何设置,打开设置面板,Editor->Live Template
Paste_Image.png我们逐一分析:
1、右上角的分组等设置区域:
这块区域主要就是添加,删除,复制模板的地方。这个group就是对模板进行分组操作。
Paste_Image.png注意点:如果使用Save as Live Template会自动分组到user组中
2、设置模板唤起方式即缩写区域
显而易见这里就是设置模板的缩写和描述的地方,该缩写就是唤起模板的方式
注意点:强烈建议所有的缩写都以一个相同的字母开始,比如zdialog,zitem,zli,ztoast。这样的好处是当你想用模板的时候只要按下z就会集中显示你设置过的模板,否则这些缩写会和系统的各种缩写混在一起很难找并且记忆。同理,我理解的代码规范里面设置变量时需要以m开头也是这个道理。
3、模板代码编辑区域以及参数设置
这个是重点,下面会详谈
4、代码适用范围
设置在哪些文件中可以调用模板
Paste_Image.png5、其他设置
reformat according to style
选中后在调用代码时可以重新格式化。这样我们在编写模板代码时可以不考虑格式问题,当然最好还是格式舒服一点,后面改起来也方便
现在重点说说如果进行模板设置
简单模板很简单,但是想要设置一个通用的并且好用的模板需要用到一些属性的用法,这里分别做些例子(直接使用中文当代码了):
1、最简单的例子:
直接将一段常用的代码设置成模板,缺点是不能灵活的改变
2、带多个参数(不设置表达式)的例子:
这里$$中的就是参数,参数的名字自定义的,我这里演示的参数都是没有意义的,实际编辑时建议带有实际意义。
type2.gif小细节:如果参数名称相同,那么赋值时值也相同,这个很多地方会用到。
3、环绕的例子
只要带上$SELECTION$就会有环绕的效果,什么是环绕?上效果图:
环绕的使用方式是选中要被环绕的代码段,然后Surround With(最好使用各自平台的快捷键),这个功能也会有很多系统提供的环绕模板。
Paste_Image.png4、参数表达式
这里先上个使用的图:
type3.gif
这是表达式配置的图:
Paste_Image.png先分别说明一下:
第一列是参数名称
第二列是表达式
第三列是默认值
第四列是跳过,即使用时直接光标直接跳过这个参数,适用于某些能自动取值的表达式
表达式系统提供了很多,具体含义最好自己都试一下,或者从系统提供的一些模板中学习体会,其实都很简单,实际使用时也用不到很多。这里是官网的介绍
注意点:enum枚举这个表达式使用时编辑完括号中的内容后要按回车确认,不然不会生效
OK,Live Template介绍完了,这个功能真的是发挥你的想象力,各种解放生产力。不要局限与一句代码,代码片段,内部类等等都可以设置模板。只要是你发现重复的地方都该考虑考虑使用模板。
当然类模板比如activity模板的设置就是另外一回事了,这个后面会开帖详说。
网友评论
除了代码模板,还可以研究Activity模板、工程模板、Macros这几个方面,也是可以很好地提高效率的。