Android Studio快速开发之道

Posted by HeyBoy on January 4, 2017

这篇文章转载自yissan的博客

概述

自己收集的关于Android Studio使用的一些技巧.

Postfix completion(后缀)

Postfix completion 是IntelliJ IDEA很早就有的功能,该功能基于已经输入的表达式和你添加的后缀来实现另一个你想要的表达式。例如在布尔表达式之后加上后缀if就是if语句,以下是工作中常用的几个后缀:

cast

当一个变量需要类型转换时,你是不是经常多次回退到变量名前面,然后括号再输入类型,现在你只需要.cast之后潇洒的输入类型。示例图

if

对于if语句你有更好的选择,.if。示例图

else

快速生成else部分,.else。示例图

field

假设你的代码写了很长,突然在1000行的时候要给一个变量赋值并且声明为全局变量,难道要返回去重新声明吗,简直麻烦。有了field,在哪都可以。示例图

fori

简单的for循环,就是这么任性,.fori。示例图

for

for循环第二式,增强for循环(使用.iter也是同样的效果)。示例图

forr

ffor循环第三式,反向for循环 .forr。示例图

null

快速判空.null。示例图

nn/notnull

快速判断非空 .nn,与.notnull效果一致。示例图

switch

.switch 通过字符串枚举等类型的对象直接生成switch语句。示例图

inst/instantsof

快速进行instanof判断 并进行类型转换。示例图

var

快速为一个表达式生成变量。示例图

par

快速为一个表达式添加括号。示例图

toast

快速toast,想输出的内容.toast即可。示例图 除了以上的后缀语句,Android Studio还有很多其它的后缀语句,由于个人觉得不是很常用,所以没有提到,大家可以打开setting-Editor-General-Postfix Completion查看更多用法。 下面贴一张Postfix Completion的图:示例图

Live Templates(模板)

您插入频繁使用的或自定义的代码结构,快速、高效、准确地构建到您的源代码文件中。我们可以直接打开Settings/Preferences 对话框 选中Editor下的Live Templates进行查看,Android Studio已经为我们提供了大量的模版,如下:示例图示例图 我们可以在右上角点击+进行添加自己的group或者模版Abbreviation就是模版的缩写,定义了缩写之后就能直接输入缩写得到模版具体内容。 Description在输入的时候会有一个附带的描述信息进行提示。 Tempplate text中的就是具体内容,具体内容中可以通过variable来进行变量定义,上图中的模版定义了的name 和value两个变量。 通过右边的Edit variables按钮可以进行变量的编辑,点击之后弹出如下对话框: 示例图

自定义模板

了解了Live Templates之后,我发现我经常使用butterknife的时候会写onClick,但是每次都是一样的代码,这时候我就可以自定义一个模版,请看下图:示例图 自定义了一个分组 custom,并且在该分组下定义了一个缩写为onclick的模版,模版内容就是一个butterknife注解修饰的click方法,并且声明了一个个变量id。 点击Edit variables如下图:示例图 指定了 Expression为completeSmart(),表示该变量会智能型的完成调用(光标会出现在变量位置),具体效果如下:示例图

快捷键

Android Studio提供的快捷键功能非常强大,也非常全面;

Find action (Control + Shift + A/Command + Shift + A)

查找as所有动作功能,超级强大示例图

Find next (F3/Command + G)

查找下一个示例图

Duplicate current line or selection(Control + D/Command + D)

快速产生一个单行或者选中行的copy示例图 速查表列出了keymap快捷键的名称. 可以直接通过AS setting界面搜索keymap. 通过对应的快捷键名称来添加或者修改快捷键.

功能描述 keymap对应名字 Mac Win/Linux
提示错误解决方案 Show Intention Actions option + enter alt + enter
AS配置界面 Preferences command + , control+alt+S
工程项目配置界面 Project Structure command + ; Control+Alt+Shift+S
快速构成代码 Code Generate command + N alt + insert
代码提示 Completion/Basic control + space(mac会冲突, 手动修改) ctrl + 空格(win同样大部分和输入法冲突, 手动修改)
选择视图 select in any view option + F1 alt + F1
添加书签标识 Toggle Bookmark option + F3 ctrl + F11
向下移动一行 Move Line Down option + shift + Down alt + shift + Down
向上移动一行 Move Line Up option + shift + Up alt + shift + Up
注释代码 Comment with Line Comment command + / ctrl + /
用代码模板包裹代码 surround with Live Template command + option + J ctrl + alt + J
格式化代码 Reformat Code command + option + L ctrl + alt + L
Copy Reference Copy Reference command + option + shift + C ctrl + alt + shift + C
if/try等包裹代码 Surround With.. command + option + T ctrl + alt + T
查看声明 Declaration command + B ctrl + B
快捷向下复制行 Duplicate Line or Block command + D ctrl + D
删除行 Delete Line command + delete ctrl + Y
快捷最近打开 Recent Files command + E ctrl + E
查找 Edit/Find/Find command + F ctrl + F
文件方法结构 File Structure command + F12 ctrl + F12
显示书签 Show Bookmarks command + F3 shift + F11
代码高亮向下查找 Move To Next Occurrence command + G F3
代码高亮向上查找 Move To Previous Occurrence command + shift + G shift + F3
按照模板生成代码 Insert Live Template command + J ctrl + J
定位到行 Navigate/Line command + L ctrl + G
快速到行首/尾 Move Caret to Line Start/End command + Left/Right ctrl + Left/Right
代码折叠/展开 Collapse/Expand command + 减号/加号 ctrl + 减号/加号
查找类 Navigate/Class command + O ctrl + N
多行注释 **Code/Comment ** command + option + / ctrl + alt + /
格式化代码 Reformat Code command + option + L ctrl + alt + L
提示参数类型 Parameter Info command + P ctrl + P
查找替换 Replace command + R ctrl + R
查找命令 Find Action command + shift + A ctrl + shift + A
拷贝文件路径 Copy Paths command + shift + C ctrl + shift + C
移动代码块 Move Statement Up/Down command + shift + down/up ctrl + shift + down/up
代码补全 Complete Current Statement command + shift + enter ctrl + shift + enter
全路径查找 Find in Path command + shift + F ctrl + shift + F
代码高亮 Highlight Usages in File command + shift + F7 alt + J
窗口内所有代码折叠/展开 Collapse/Expand All command + shift + 减号/加号 ctrl + shift + 减号/加号
查找文件 Navigate/File command + shift + O ctrl + shift + N
全路径中替换 Replace in Path command + shift + R ctrl + shift + R
大小写转换 Toggle Case command + shift + U ctrl + shift + U
显示粘贴版历史 Paste from History command + shift + V ctrl + shift + V
快速查找定义   command + space ctrl + shift + I
粘贴 Paste command + V ctrl + V
复制 Copy command + C ctrl + C
去除无效包引用 Optimize Imports control + option + O ctrl + alt + O
显示类关系继承体系 Type Hierarchy control + H ctrl + H
快速覆写方法 override Methods control + O ctrl + O
查找调用的位置 Call hierarchy control + option + H ctrl + alt + H
添加书签 Toggle Bookmark F3 F11
扩大缩小选中范围 Extend Selection/Shrink Selection option + UP/Down ctrl + W + shift + W
跳转到父类 Super method command + U ctrl + U
关闭当前tab标签 Editor Tabs / Close command + W ctrl + shift + a
关闭除编辑窗口的其余窗口 Hide All Tool Windows command + shift + F12 ctrl + shift + F12
预览方法定义 Quick Definition command + Y ctrl + shift + I
返回光标最后编辑位置 Last Edit Location command + shift + delete control + shift + Backspace
调到代码块首部/尾部 Move Caret To Code Block Option + Command + [ 或者 ] Control+[ 或者 ]
重命名 Rename shift + F6 shift + F6
抽取方法 Extract Method command + option + M control+alt+M
抽取变量 Extract Variable command + option + V control+alt+V
抽取字段 Extract Field command + option + F control+alt+F
抽取常量 Extract Constant command + option + C control+alt+C
抽取参数 Extract Parameter command + option + P control+alt+P
重构入口 Refactor This control + T ctrl + alt + shift + T