工作过程中认为用到的频率最高又非常好用的一些技巧推荐给大家。
1.强大的搜索,可以搜全局,甚至AAR、JDK、SDK(Find path)
Cmd + Shift + f,把类型选到Scope
比如接手了一个不熟悉的项目,logcat打了一些log搜不到,这些log存在于一些第三方库中,常规的Shift + Cmd + f
肯定搜不到,只要改变一下选项就可以搜到,但是搜不到二进制 .class 文件
2.快速找到经常打开的文件,(Recent files)
Cmd+e | Ctrl + tab
Cmd+e 是打开最近打开过的类,类似于LRU的机制,Ctrl+tab 打开的也是同样的面板,只不过执行完这个快捷键它会认为你要切一下上一个打开的类或者文件,如果长按controll,你可以通过tab键一直选到你中意的那个类,如果一不小心游标过了,可以再按下Shift(Ctrl+Shift+tab)往回选,特别的方便。
[图片上传失败...(image-1a3b99-1610883714158)]
3.查看单个文件的改动记录--Annotate
Cmd+Shift+i(需要自己手动设置),或者在行号区右键-->Annotate
非常好用的一个功能,用看查看这个文件每行代码的git记录,包括时间
4.操作VCS
Cmd+K | Ctrl+V | Cmd+9
这里的操作vcs是指的通过vcs进行的git的一些操作,包括但不限于commit、 push、blame、diff、log、Rollback等等
5.Action搜索(Find actions)
Cmd+shift+a
这个也挺方便的,可以搜出一些命令,只要IDE menu里面有的都能搜到,并能执行,而且里面还自带一些状态开关,可以直接操作开关
6. 与分支比对(Compare With Branch (Git))
可以输入 cmd+shift+a 搜索 Compare with branch
假如你的项目是使用git来管理的,你可以将当前文件或者文件夹与其他的分支进行比对。比较有用的是可以让你了解到你与主分支有多少差别。
Menu → VCS → Git → Compare With Branch 或者 Cmd+Shift+a
输入Compare With Branch 就会有提示
[站外图片上传中...(image-be2155-1610883714158)]
7. 与剪切板比对(Compare With Clipboard)
可以输入 cmd+shift+a 搜索 Compare with Clipboard
将当前选中的部分与剪切板上的内容进行比对。
右键选中的部分,在右键菜单中选择“Compare With Clipboard”。
8. 上一个编辑位置(Last Edit Location)
Cmd + Shift + Delete
该操作将使得你导航到上一处你改动过的地方,这与点击工具栏上的返回箭头回到上一个定位位置是不一样的,该操作将会返回到上一个编辑的位置。
9. 快速进入Symbols(布局视图)
Ctrl+Cmd+ ↑
该操作有助于在布局文件和Activity/Fragment之间轻松跳转。这也是一个快捷操作,在类名/布局顶端的左侧。
10.参数信息 (Parameter Info)
Cmd + P
这个操作将显示和你在方法声明处写一样的参数列表,当你想看某个存在的方法的参数,这是一个很有用的操作。光标下的参数显示为黄色,如果没有参数显示黄色,意味着你的方法调用是无效的,很可能是某个参数分配不对。(例如一个浮点数赋值给了整型参数)。如果你正在写一个方法调用,突然离开编辑的地方,再返回的时候,输入一个逗号,就可以重新触发参数信息。
11. Sublime Text式的多处选择(Sublime Text Multi Selection)
Ctrl + G (Ctrl+Cmd+G 是全部选中)
这个功能超级赞!该操作会识别当前选中字符串,选择下一个同样的字符串,并且添加一个光标。这意味着你可以在同一个文件里拥有多个光标,你可以同时在所有光标处输入任何东西。这个是真的方便,可以批量操作字符串。
[站外图片上传中...(image-9f399a-1610883714158)]
12. 列选择/块选择(Column Selection)
按住Alt,然后拖动鼠标选择。
切换块选择模式:Cmd + Shift + 8
正常选择时,当你向下选择时,会直接将当前行到行尾都选中,而块选择模式下,则是根据鼠标选中的矩形区域来选择。
开启/关闭块选择:Menu → Edit → Column Selection Mode
13.使用Enter和Tab进行代码补全的差别(Enter vs Tab for Code Completion)
代码补全时,可以使用Enter或Tab来进行补全操作,但是两者是有差别的。
使用Enter时:从光标处插入补全的代码,对原来的代码不做任何操作。
使用Tab时:从光标处插入补全的代码,并删除后面的代码,直到遇到点号、圆括号、分号或空格为止。
14.动态模板(Live Templates)
Cmd + J
动态模板是一种快速插入代码片段的方法,使用动态模板比较有意思的是你可以使用合适的默认值将模板参数化,当你插入代码片段时,这可以指导你完成参数。
- 更多:如果你知道模板的缩写,就可以不必使用快捷键,只需要键入缩写并使用Tab键补全即可。
15. 后缀补全(Postfix Completion)
你可以认为该操作是一种代码补全,它会在点号之前生成代码,而不是在点号之后。实际上你调用这个操作和正常的代码补全操作一样:在一个表达式之后输入点号。
例如对一个列表进行遍历,你可以输入myList.for,然后按下Tab键,就会自动生成for循环代码。
你可以在某个表达式后面输入点号,出现一个候选列表,在常规的代码补全提示就可以看到一系列后缀补全关键字,同样的,你也可以在Editor → Postfix Completion中看到一系列后缀补全关键字。
常用的有后缀补全关键字有:
.for (补全foreach语句)
.format (使用String.format()包裹一个字符串)
.cast (使用类型转化包裹一个表达式)
16. 提取变量(Extract Variable)
Cmd + Alt + V
这是一个提取变量的快捷操作。当你在没有写变量声明的直接写下值的时候,这是一个很方便生成变量声明的操作,同时还会给出一个建议的变量命名。
当你需要改变变量声明的类型,例如使用 List 替代 ArrayList,可以按下Shift + Tab,就会显示所有可用的变量类型。
17. ADB Idea(Android studio 插件)
Ctrl+Shift+a,会弹出一个框选择对应的数字
非常好用的一个工具,可以快速通过他对adb进行操作,比如debug,clear data
写到最后:
写这篇文章主要是在AS里面写的,然后再复制到KStack,写的时候先按照觉着好用的快捷键技巧筛选出一批,然后再反复的编辑,
修改,把认为最常用的最好用的列出来,期间我用到了我里面写的快捷键以及没有写的我列一下:
ctrl +cmd +g 全部选中同一规则的字符串,然后全部删除 ctrl+g 手动小范围选择某个字符串替换
cmd +shift +↑/↓ 上下挪动行
alt +鼠标 款选择操作
cmd+shift+delete 上一次编辑的位置
compare with clipboard 与上一版本的稿子 diff
参考链接:
https://developer.android.com/studio/intro/keyboard-shortcuts?hl=zh-cn
https://jaeger.itscoder.com/android/2016/02/14/android-studio-tips.html