整合了一些论坛,博客上的Android Studio的技巧,然后汇总成这篇文章。
注意:以下指令均为Windows下的,OS X下的请另行查阅。
参考:
http://www.open-open.com/lib/view/open1458715872710.html 有图
http://www.cnblogs.com/yuqf/p/5439868.html
【基本操作】(1-4)
【查看类操作】(5-17)
【跳转类操作】(18-27)
【代码类操作】(28-51)
【调试类操作】(52-63)
【基本操作】(1-4)
1、打开设置(Settings)
快捷键:Ctrl + Alt + S
描述:所有的快捷键都在Settings-Keymap 中,我们使用的是Default,注意Android Studio 的默认设置与 Eclipse 有不同,强烈建议使用Android Studio的默认设置。
2、展开/折叠代码块
快捷键: Ctrl + “+”/“-”
描述:折叠或展开当前光标所在位置的那个方法。
快捷键: Ctrl + Shift + “+”/“-”
描述:折叠或展开当前文件的所有方法。
可以在Settings → Editor → General → Code Folding 中设置折叠规则,但一般不需要进行更改。
3、隐藏所有面板
快捷键: Ctrl + Shift + F12
描述:切换编辑器铺满整个程序界面,隐藏其他的面板。再次执行该操作,将会回到隐藏前的状态。
4、隐藏工程面板
快捷键:Alt + 1
描述:快速打开或隐藏工程面板。
【查看类操作】(5-17)
5、查看文档解释
快捷键:Ctrl + Q
描述:方法、属性、变量、类等的解释。鼠标点击以后,会弹出一个小窗口,里面有这个方法或者属性的一些文档解释。
6、查找
快捷键: Ctrl + F
描述:当你想在文件中寻找某个关键字的位置时,可以使用查找功能,并且查找功能具有自动补全的功能,只需要输入部分即可。
7、替换
快捷键: Ctrl + R
描述:将所查到的单词替换掉,可以使用单个替换,也可以使用全部替换。
8、查找引用
快捷键:Alt + F7
描述:查找方法、属性等被引用的地方。
9、与剪切板比对
调用:右键选中的部分,在右键菜单中选择“Compare With Clipboard”。
描述:会弹出一个框,将当前选中的部分与剪切板上的内容进行比对。
10、快速查看定义
快捷键:Ctrl + Shift + I
描述:你曾经是否想查看一个方法或者类的具体实现,但是不想离开当前界面?该操作可以帮你搞定。
11、查找类
快捷键:Ctrl + N
点击以后会弹出一个查找类名的小窗口,快速定位自己写的类。
12、查找工程
快捷键:Ctrl + Shift + N
点击以后会弹出一个查找文件名的小窗口,快速定位文件位置。
13、最近修改的文件
快捷键: Ctrl + Shift + E
描述:会显示最近本地修改过的文件列表,根据修改时间排列。可以输入字符来过滤列表结果。
14、最近访问
快捷键:Ctrl + E
描述:该操作可以得到一个最近访问文件的可搜索的列表。
15、文件结构弹窗
快捷键:Ctrl + F12
描述:该操作可以展示当前类的大纲,并且可以快速跳转。还可以通过键盘输入来过滤结果。这是一种很高效的方法来跳转到指定方法。
你在输入字符的时候可以用驼峰风格来过滤选项。比如输入”oCr”会找到”onCreate”
16、查看类结构图
快捷键:Ctrl + H
描述:查看类层级视图,比较直观。
17、查看参数信息
快捷键:Ctrl + P
描述:可以查看参数的信息。
【跳转类操作】(18-27)
18、跳转错误/警告
快捷键:F2
描述:显示警告或错误,快速定位错误或者错误。
19、回到上一个工具窗口
快捷键:F12
描述:有时候会从某个工具窗口跳到编辑器里面,然后又需要重新回到刚才操作的那个工具窗,比如你查找使用情况的时,使用该操作可以在不使用鼠标的情况下跳转到之前的工具窗口。
20、上一个编辑位置
快捷键: Ctrl + Shift + Backspace
描述:该操作将使得你导航到上一处你改动过的地方,这与点击工具栏上的返回箭头回到上一个定位位置是不一样的,该操作将会返回到上一个编辑的位置。
21、跳转到声明
快捷键: Ctrl + 点击
描述:跳到类、方法或变量声明的地方
22、在方法和内部类之间跳转
快捷键: Alt + Up/Down
描述:该操作让光标在当前文件的方法或内部类的名字间跳转。
23、在已打开的标签中跳转
快捷键: Alt + Left/Right
描述:向左则切换到左边一个标签, 向右则切换到右边一个标签。避免鼠标点击的繁琐。
24、括号跳转
快捷键:Ctrl + {或}(左括号或右括号)
描述:跳到方法或者类的开头或者结尾
25、定位到父类
快捷键: Ctrl + U
描述:如果光标是在一个继承父类重写的方法里,这个操作将定位到父类实现的地方。如果光标是在类名上,则定位到父类类名。
26、相关文件跳转
快捷键:Ctrl + Alt + Home
描述:该操作有助于在布局文件和Activity/Fragment之间轻松跳转。这也是一个快捷操作,在类名/布局顶端的左侧。
27、界面切换
快捷键:Ctrl + Tap
描述:打开界面切换窗口,保持按住Ctrl键,选中相应的要打开的窗口。
【代码类操作】(28-51)
28、注释
快捷键:Ctrl + /(斜杠)
描述:注释当前代码,注释当前行或者选中的行的代码,同样适用于工程的AndroidManifest.xml和布局xml文件。
快捷键:Ctrl + Shift + /(斜杠)
描述:添加区域块注释。
快捷键:/** + Enter
描述:添加javadoc注释。
JavaDoc常用标记
标记 |
用于 |
作用 |
@author |
对类的说明 |
标明开发该类模块的作者 |
@version |
对类的说明 |
标明该类模块的版本 |
@see |
对类、属性、方法的说明 |
参考转向,也就是相关主题 |
@param |
对方法的说明 |
对方法中某参数的说明 |
@return |
对方法的说明 |
对方法返回值的说明 |
@exception |
对方法的说明 |
对方法可能抛出的异常进行说明 |
29、扩大/缩小选择
快捷键:Ctrl + W(扩大)/ Ctrl + Shift + W(缩小)
描述:该操作会在上下文逐渐扩大/缩小当前选择范围。例如,它会先选中当前变量,再选中当前语句,然后选中整个方法,缩小选择则相反。
30、为导入包和类进行排序
快捷键:Ctrl + Alt + O
描述:按下后,会将选中区域、当前文件或全局的代码文件中的import包或类进行重新排序,不会导入未导入的包。
31、Sublime Text式的多处选择
快捷键: Alt + J
描述:该操作会识别当前选中字符串,选择下一个同样的字符串,并且添加一个光标。这意味着你可以在同一个文件里拥有多个光标,你可以同时在所有光标处输入任何东西。如同时选中多个public,可以同时修改为private
32、列选择/块选择
调用:按住Alt,然后拖动鼠标选择。
描述:正常选择时,当你向下选择时,会直接将当前行到行尾都选中,而块选择模式下,则是根据鼠标选中的矩形区域来选择。
33、行复制
快捷键:Ctrl + D
描述:复制当前行,并粘贴到下一行,这个操作不会影响剪贴板的内容。这个命令配合移动行快捷键非常有用。
34、删除行
快捷键:Ctrl + Y
描述:如果没选中,则删除光标所在行,如果选中,则会删除选中所在的所有行。剪切Ctrl + X 同理,如果没选中,则剪切光标所在行。
35、使用Enter和Tab进行代码补全的差别
快捷键:Tap/Enter
psvm + Tap = public static void main(String[]args){}
sout + Tap = System.out.println();
if/for + Tap = 补全括号
描述:代码补全时,可以使用Enter或Tab来进行补全操作,但是两者是有差别的。
使用Enter时:从光标处插入补全的代码,对原来的代码不做任何操作。
使用Tab时:从光标处插入补全的代码,并删除后面的代码,直到遇到点号、圆括号、分号或空格为止。
36、动态模板
快捷键:Ctrl + J
描述:动态模板是一种快速插入代码片段的方法,使用动态模板比较有意思的是你可以使用合适的默认值将模板参数化,当你插入代码片段时,这可以指导你完成参数。
如果你知道模板的缩写,就可以不必使用快捷键,只需要键入缩写并使用Tab键补全即可。
以下是较常用的
toast |
Toast.makeText(, "", Toast.LENGTH_SHORT).show(); |
fbc |
() findViewById(R.id.); |
logd |
Log.d(TAG, "print: "); |
loge |
Log.e(TAG, "print: ", ); |
logm |
Log.d(TAG, "print() called"); |
logr |
Log.d(TAG, "print() returned: " + ); |
gone |
.setVisibility(View.GONE); |
ifn |
if (variable == null) {} |
inn |
if (variable != null) {} |
fori |
for (int i = 0; i < ; i++) { |
foreach |
for (: |
37、语句补全
快捷键:Ctrl + Shift + Enter
描述:这个方法将会生成缺失的代码来补全语句,常用的使用场景如下:
② 在行末添加一个分号,即使光标不在行末;
②为if、while、for 、switch语句生成圆括号和大括号;
③方法声明后,添加大括号;
④如果一个语句已经补全,当你执行该操作时,则会直接跳到下一行,即使光标不在当前行的行末。
38、代码补全提示/自动补全
快捷键:ctrl space(提示)、ctrl shift space(自动补全)
描述:按下后,显示当前光标处的代码补全提示框/自动补全光标后代码。
39、后缀补全
描述:你可以认为该操作是一种代码补全,它会在点号之前生成代码,而不是在点号之后。实际上你调用这个操作和正常的代码补全操作一样:在一个表达式之后输入点号。
例如对一个列表进行遍历,你可以输入myList.for,然后按下Tab键,就会自动生成for循环代码。
常用的有后缀补全关键字有:
.for (补全foreach语句)
.format (使用String.format()包裹一个字符串)
.cast (使用类型转化包裹一个表达式)
40、快速生成代码
快捷键:Alt + Insert
调用:Code-->Generate
描述:如生成构造函数,get方法,set方法,toString方法等。
41、快速复写方法
快捷键:Ctrl + O
描述:快速复写hashCode(),equals()等方法。
42、编写正则表达式
快捷键:Alt + Enter → check regexp
描述:使用Java编写正则表达式是一件很困难的事,在这种环境下编辑可以自动避开反斜杠等。
43、提取方法
快捷键:Ctrl + Alt + M
描述:提取一段代码块,生成一个新的方法。当你发现某个方法里面过于复杂,需要将某一段代码提取成单独的方法时,该技巧是很有用的。
在提取代码的对话框,你可以更改方法的修饰符和参数的变量名。
44、提取参数
快捷键:Ctrl + Alt + P
描述:这是一个提取参数的快捷操作。当你觉得可以通过提取参数来优化某个方法的时候,这个技巧将很有用。该操作会将当前值作为一个方法的参数,将旧的值放到方法调用的地方,作为传进来的参数。
45、提取变量
快捷键:Ctrl + Alt + V
描述:这是一个提取变量的快捷操作。当你在没有写变量声明的直接写下值的时候,这是一个很方便生成变量声明的操作,同时还会给出一个建议的变量命名。
更多:当你需要改变变量声明的类型,例如使用 List 替代 ArrayList,可以按下Shift + Tab,就会显示所有可用的变量类型。
46、内置
快捷键:Ctrl + Alt + N
描述:当你开始对提取操作有点兴奋的时候,突然觉得东西太多了,怎么办呢?这是一个和提取相反的操作。该操作对方法、字段、参数和变量均有效。
47、合并行和文本
快捷键:Ctrl + Shift + J
描述:该操作遵守格式化规则,同时:
合并两行注释,同时移除多余的//;
合并多行字符串,移除+和双引号;
合并字段的声明和初始化赋值;
48、上下移动行
快捷键:Alt + Shift + Up/Down;
描述:不需要复制粘贴就可以上下移动行了
49、移动方法
快捷键:Ctrl + Shift + Up/Down
描述:这个操作和移动行操作很类似,不过该操作是应用于整个方法的,在不需要复制、粘贴的情况下,就可以将整个方法块移动到另一个方法的前面或后面。该操作的实际叫做“移动语句”,这意味着你可以移动任何类型的语句,你可以方便地调整字段或内部类的顺序。
50、重命名
快捷键:Shift + F6
描述:你可以通过该操作重命名变量、字段、方法、类、包。当然了,该操作会确保重命名对上下文有意义,不会无脑替换掉所有文件中的名字,相当于Refactor->rename
51、包裹代码
快捷键:Ctrl + Alt + T
描述:该操作可以用特定代码结构包裹住选中的代码块,通常是if语句,循环,try/catch语句或者runnable语句。 如果你没有选中任何东西,该操作会包裹当前一整行。
【调试类操作】(52-63)
52、分析传入数据流
调用:Menu → Analyze → Analyze Data Flow to Here
描述:这个操作将会根据当前选中的变量、参数或者字段,分析出其传递到此处的路径。 当你进入某段陌生的代码,试图明白某个参数是怎么传递到此处的时候,这是一个非常有用的操作。
相反的操作:分析传出数据流,这个将会分析当前选中的变量往下传递的路径,直到结束。
53、堆栈追踪分析
调用:Menu → Analyze → Analyze Stacktrace
描述: 这个操作读取一份堆栈追踪信息,并且使它像logcat中那样可以点击。当你从bug报告中或者终端复制了一份堆栈追踪,使用该操作可以很方便地调试。
54、关联调试程序
调用:点击工具栏图标或者Menu → Build → Attach to Android Process
描述:随时启动调试程序,即使你没有以调试模式启动你的应用。这是一个很方便的操作,因为你不必为了调试程序而以调试模式重新部署你的应用。当别人正在测试应用,突然遇到一个bug而将设备交给你时,你也可以很快地进入调试模式。
55、条件断点
调用:右键需要填写表达式的断点,然后输入布尔表达式
描述:简单说,就是当设定的条件满足时,才会触发断点。你可以基于当前范围输入一个java布尔表达式,并且条件输入框内是支持代码补全的。
56、禁用断点
调用:按住Alt,然后单击断点即可
描述:这个操作将使得断点。当你有一个设置过复杂条件的断点或者是日志断点,当前不需要,但是下次又不用重新创建,该操作是很方便的。
57、计算表达式
快捷键:处在断点状态时,光标放在变量处,按Alt + F8,即可显示计算表达式对话框
描述:这个操作可以用来查看变量的内容并且计算几乎任何有效的java表达式。需要注意的是,如果你修改了变量的状态,这个状态在你恢复代码执行后依然会保留。
58、审查变量
快捷键:调试状态下,按住Alt键,然后单击表达式即可
描述:该操作可以在不打开计算表达式对话框就能审查表达式的值。
59、日志断点
调用:在断点上右键,取消Suspend的勾选,然后勾选上Log evaluated Expression,并在输入框中输入你要打印的日志信息
描述:这是一种打印日志而不是暂停的断点,当你想打印一些日志信息但是不想添加log代码后重新部署项目,这是一个非常有用的操作。
60、标记对象
调用:右键你需要标记的对象,选中Mark Object,输入标签
快捷键:选中对象时,F11
描述:当你在调试的时候,这个操作可以让你给某个特殊的对象添加一个标签,方便你后面很快地辨认。在调试时,当你从一堆相似的对象中查看某个对象是否和之前是一样的,这就是一个非常有用的操作。
61、显示当前运行点
快捷键:(Debug时) Alt + F10
描述:该操作会立刻把你的光标移回到当前debug处。
通常的情况是: 1. 你在某处触发了断点 2. 然后在文件中随意浏览 3. 直接调用这个快捷键,快速返回之前逐步调试的地方。
62、终止进程
快捷键:Ctrl + F2
描述:该操作会终止当前正在运行的任务。如果任务数量大于一,则显示一个列表供你选择。在终止调试或者中止编译的时候特别有用!
63、临时断点
快捷键:Alt + 鼠标左键 点击代码左侧(鼠标)
描述:通过该操作可以添加一个断点,这个断点会在第一次被命中的时候自动移除。