美文网首页工具类安卓集中营安卓
熟练这些,才会知道 Android studio 有多高效

熟练这些,才会知道 Android studio 有多高效

作者: OCNYang | 来源:发表于2016-12-28 10:20 被阅读13399次

    Android Studio 常用高效快捷键

    整理Android群英传和网上出现的比较完整AS的快捷小技巧. mac版已测, win大部分已测试. 最后有一个整理的完整快捷键表格. win也好mac也好, 如果快捷被修改还是错误, 都可以通过提供的Keymap中的关键字来进行重设.
    图中gif如果看不清, 放大页面即可.

    原文地址

    Android studio 奇巧淫工

    <a name="1"/>

    常用小操作

    <a name="2"/>

    单词选择

    一般IDE通过option + 方向键左右(win为ctrl + 左右方向键)对光标进行单词的跳动, 但是由于我们使用驼峰式命名较多, 默认的会导致由多个单词组成的驼峰式的首尾跳转. 还好AS可以对这种风格进行设定.

    默认效果

    修改后的效果

    修改步骤

    打开偏好设置如图片设置

    注意: (感谢楼下朋友的留言,指出这个问题)
    如果你仍然希望当鼠标在单词上双击之后选中整个单词,需要作如下设置:

    • File | Settings 打开设置
    • 选择 Editor | General
    • 取消选中 ‘Mouse’ | ‘Honor Camel Humps words settings when selecting on double click’

    <a name="3"/>

    显示最近操作, 修改的文件

    例如: 我打开了main_activity.xml布局文件, 然后关闭页面. 这个时候Command + E, 就会如下显示之前的操作文件.

    那么如果要查看之前修改过的文件, Command + Shift + E即可. 可以配合Control + Tab进行快速界面的切换.

    快捷键

    • 最近操作
      • Command + E (mac)
      • ctrl + E (win)
    • 最近修改
      • Command + Shift + E (mac)
      • ctrl + shift + enter (win)

    <a name="4"/>

    文件查找

    search Everywhere

    项目中的全局查找功能文件功能

    查找类文件

    • command + o (mac)
    • ctrl + n (win)

    默认只是在项目代码中查找类文件, 如果需要查找sdk或者类库中的相关类. 再按一次快捷键, 或者勾选下图选项搜索全局类文件


    查找文件

    这个级别比上面那个更广. 包括所有文件, 如xml等.

    • command + shift + o (mac)
    • ctrl + shift + n (win)

    如上如果需要搜索类库或者源码, 请在按一次快捷键, 或者勾选查找类给出图中的选项.

    <a name="5"/>

    操作记录

    在浏览代码结构的时候, 很多时候总是会跟进许多类里面, 如果想回到之前浏览调转点. 那么这个快捷键你就必须要记住.

    • Command + Option + Left\Right 或者 command + [, command + ] (mac)
    • ctrl + alt + Left\Right(win)

    <a name="6"/>

    移动行

    这个不用太多介绍, 就是整行的上下移动.

    • Option + shift + 方向键上\方向键下 (mac)
    • alt + shift + 方向键上\方向键下 (win)

    <a name="7"/>

    查找方法调用处

    场景: 查找一个方法在何处被调用, 或者一个ID在哪里被引用. 选中这个方法右键, 选择Find Usages即可.

    快捷键:

    • option + F7 (mac)
    • alt + F7 (win)

    <a name="8"/>

    方法的跟进

    方法总是伴随着调转, 我们也总是会对方法的内部查看细节. 常用的办法是按住Command 并点击方法名的方式.

    也可以在光标所在处直接通过Command + B进行方法内部跟进.

    • Command + B (mac)
    • ctrl + alt + B (win)

    <a name="9"/>

    显示方法的参数

    当我们使用一个方法的时候, 会在刚开始的时候显示出所有的参数. 但是过一会可能就不存在了. 这个时候如果你想知道下一个参数是什么类型, 或者看一下所有参数.

    快捷键:

    • command + P (mac)
    • ctrl + P (win)

    如果你还想查看一下方法的文档, 不用跟进源码, 直接F1键即可显示出文档.

    <a name="10"/>

    行的快速操作

    快速删除行, 其实使用剪切功能就可以Command + X

    快速复制行, 使用command + Dmac, ctrl + Dwin

    <a name="11"/>

    多行操作

    可能有时候我们会声明做一系列相关的变量为float类型, 但是真实的需要的是int类型. 这个时候就可以进行多重选择进行整体修改. 如下图:

    按住option(win为alt)键, 然后鼠标进行区域的选择. 然后进行对应修改即可.

    你可能认为上面的必须要连续的才可以. 那么如果可以设置多个光标点是否就可以满足你的问题了?

    看下图:

    • option + shift + 鼠标点击 (mac)
    • alt + shift + 鼠标点击(win)

    即可添加一个编辑光标. 最后如果不需要那么就esc即可关闭多余光标.

    <a name="12"/>

    快速补全完成

    创建一个对象. 或者findViewById()有时总需要移动鼠标或者光标到末尾进行分号的补全. 这些都可以快捷键搞定. 当你用习惯之后, 会非常的方便好用.

    • command + shift + enter(mac)
    • ctrl + shift + enter(win)

    实现的功能

    • 方法体大括号的添加
    • 行尾分号的添加
    • 自动格式化改行操作等

    <a name="13"/>

    代码提示

    任何地方都可以调出的代码提示.

    control + option + /(不是默认, mac默认为control + space). 这里要说的是. 代码提示之后一般都会回车键确定. 当按回车键的时候. 会保留光标之后的内容. 当有的时候我们并不需要. 这个时候你就可以使用table键进行选择. 它会将后面的输入内容删掉.

    win的快捷方式ctrl + 空格(win同样大部分和输入法冲突, 请手动在AS设置里面keymap项查找completion basic手动修改快捷键)

    快速生成变量

    比如在方法体中logi直接快速生成一个log日志输出的模板, 但是TAG这个常量还没有声明. 这个时候用光标移动到TAG上. 使用快捷键提示即可快速生成.

    • option + enter(mac)
    • alt + enter(win)

    <a name="14"/>

    变量的快速操作

    上图使用了两次快捷键,

    • 第一次: 跳转到变量的声明处
      • command + B (mac)
      • ctrl + b (win)
    • 第二次: 跳转到变量类型的定义处
      • command + shift + B (mac)
      • ctrl + shift + b (win)

    <a name="15"/>

    代码折叠

    对代码块进行折叠和展开.

    • command + 加号\减号(mac)
    • ctrl + 加号\减号 (win)

    <a name="16"/>

    预览方法定义

    如果只想大体了解方法的定义, 而不需要进行方法所在源码类的跳转显示. 可以通过Command + Y (win快捷键为ctrl + shift + I)来进行预览

    <a name="17"/>

    粘贴板管理

    对于复制粘贴. 我们习惯只是单次c+v, 那么如果你想查看之前被覆盖了的复制过的内容. AS同样有复制粘贴板来管理. 展示最近几次的复制内容.

    • command + shift + v (mac)
    • ctrl + shift + v (win)

    <a name="18"/>

    拆分窗口

    只需要在标签页上右键. 选择split vertical\horizontal.

    <a name="19"/>

    变量命名风格

    对于成员变量应该m开头. 对于静态成员通常是s开头. 可以这样设置这个风格.

    这样在输入一个变量的名字时, 就可以自动补全m或者s. 同时在Extra代码的时候, 生成的代码都可以自动根据这个规则重构.

    <a name="20"/>

    查看大纲

    当一个类很大的时候. 可以通过command + F12(win为ctrl + F12) 打开大纲界面. 展示全部的方法和成员变量列表.

    并且支持模糊搜索. 来进行筛选显示. 可以快速的找到要搜索的方法集.

    <a name="21"/>

    书签

    在浏览大型代码, 或者调试时. 有时可能会需要记住一些关键的代码或者方法. 这个时候就可以使用书签. 来记录此关键代码. 只需要在点击需要标记的行, 并按F3就会在左侧出现一个小对勾. 这就说明已经打上了一个书签.

    同时在Favorites标签中, 也可以找到对应的Bookmarks

    可以通过快捷键command + F3 (win为shift + F11)快速调出书签面板, 进行后续的操作.

    <a name="22"/>

    快速重构

    <a name="23"/>

    重构入口

    当一个代码片段准备重构的时候. 可以使用control + T (win为ctrl + alt + shift + T)打开重构入口. 或者右键单击选择Refactor显示重构界面.

    这里有很多方便的功能. 提成方法等等.

    <a name="24"/>

    surround With

    当对一个段代码进行, 条件包裹, 捕捉异常, 循环, Runnable等. 可以直接使用快捷的方式, 而不需要手动生成条件在进行代码块的复制-粘贴

    快捷键

    • command + option + T(mac)
    • ctrl + alt + T(win)

    <a name="25"/>

    Extract

    你可以经常使用它,提取出一个方法.

    不仅仅如此, 你还可以对xml中的多个控件相同的属性进行抽取为style

    快捷键:

    • ctrl + alt + shift + T(win)

    是不是很爽?

    这是其一, 对于xml不仅可以抽取Style, 还可以抽取布局Layout

    而代码中, 可以提取各种变量, 参数, 长廊.

    <a name="26"/>

    代码模板

    AS中已经内置了很多代码模板, 你可以很嗖嗖嗖的就完成之前倒背如流的代码. 如下一小部分

    通过快捷键可调出这些代码模板

    • command + J(mac)
    • ctrl + J(win)

    <a name="27"/>

    代码分析

    Google提供了很多代码分析工具, 这些工具都集中在顶部菜单栏的Analyze中.

    <a name="28"/>

    Inspect Code & Code cleanup

    Inspect Code可以让IDE分析整个工程. 类似于Lint分析, 并会给出大致修改意见等

    Code cleanup功能可以进行自动的代码修复.

    <a name="29"/>

    Dependencies

    通过Analyze中的几个Dependencies选项. 可以快速分析项目的依赖.

    <a name="30"/>

    方法调用栈

    对于某些方法来说, 查看它被调用的地方和调用的顺序是非常重要的. 可通过control + option + H快速查找方法调用栈.

    <a name="31"/>

    断点调试

    <a name="32"/>

    快速断点

    条件断点. 主要用在循环体内. 一个循环10次的for. 只想在第8次进入断点.

    普通断点相似, 一样先声明一个断点. 然后在普通断点单击鼠标右键. 在弹出的菜单填写断点条件即可. 如下:

    上面图中Enable可以控制启用, 还是停用一个断点.


    临时断点. 如果需要一个只执行一次的断点. 执行完之后断点自动取消. 那么可以通过快捷点将当前行作为临时断点.

    • command + option + shift + F8
    • ctrl + alt + shift + F8

    为了篇幅不是很长, 调试的部分贴一个讲解很详细的帖子

    <a name="33"/>

    快捷键查找表

    速查表列出了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

    相关文章

      网友评论

      • cea20439895f:补充一下,Ctrl+Y,删除光标所在行
      • 独善其琛:显示方法参数是 Ctrl+Q吧。
      • 9ee44e56f261:建议出一个Eclipse转AS习惯适应专题
      • 米谷米:m
        OCNYang:@米谷米 mark
      • KT_11:赞!
      • 旧梦圆:不错,普利斯狗昂
      • allenZP:先收藏了
      • OCNYang::high_brightness:
        OCNYang: @OCNYang
        OCNYang: @OCNYang
      • 4b01863fd657:不錯不錯
      • 灿烂的黑土:很不错。收藏呢了。
      • 路城:棒棒哒
      • pseudo_niaonao:已看,但还记不住果断收藏,已分享 :smile:
      • luke_ron:这个分享很不错
      • 卜可:感谢作者的无私奉献,单词选择那个技巧设置后可以实现一次移动一个单词,但是双击也不能选择整个字符串了,只选择单个的
        卜可:@OCNYang 完美解决,谢谢
        OCNYang:你可以试试,这样的话两种效果都能够实现了。
        OCNYang:@卜可 :innocent: 谢谢你指出的这个问题,解决办法已经补充到文章上去了。
      • 清晨傍晚单着:实际使用还是很多问题
      • 奈落落:code style + reformat 都没讲,估计好多人不会...这样死记硬背快捷键,有什么用?
        OCNYang: @22ee03b8dc8f 培养成条件反射就好了😂
        22ee03b8dc8f:人生中总是有些事情要死记硬背的。。。。
        OCNYang:@奈落落 这里一方面是为了大家知道这些有用的快捷键,一方面如果大家真的在编码过程中能够记得这些快捷键能在一定程度上提高编码效率。 至于 你提到的,也是编码过程中值得注意的一方面。 对于代码风格,有很多人提出了很多看上去很正确很标准的规范;甚至Google也给出了官方代码规范。 对于我个人观点,编码风格既然是“风格”就是个人在长期编码中形成的自己的风格,只要可读性强和格式一致就行,没必要遵循特定的规范。 当然,对于团队开发而言,为了使整体代码风格一致和便于沟通制定一定的规范是可以的,但这种规范强度不宜过大。(仅仅“一家之言” :smile:
      • 老维子:厉害
      • Mark_哥儿:嗯,可以
      • 九风楼主:先收藏
        OCNYang:@哆嗦老猫 正确是姿势是点 :heart: ,然后立即投入使用中 :grin: ......
      • 不吃肉的小屁孩:🐷🐷🐷🐷
        OCNYang: @不吃肉的小屁孩 🙃

      本文标题:熟练这些,才会知道 Android studio 有多高效

      本文链接:https://www.haomeiwen.com/subject/bscyvttx.html