经常使用小操作

单词选择

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

默认效果

改动后的效果

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

改动步骤

打开偏好设置如图片设置

尽管单词跳着爽了, 可是当你想复制这个变量名双击的时候. 仅仅会复制变量名中的某一个单词. 而不是像曾经会复制空格切割两边的完整字符串. 反正我是用了不到一天有些不舒服就切换回原来的风格了.

可是option + 左右方向键这个小技巧用熟了, 比特意用鼠标点,或者光标一下下移动到目标位置会高效非常多.

显示近期操作, 改动的文件

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

那么假设要查看之前改动过的文件, Command + Shift + E就可以. 能够配合Control + Tab进行高速界面的切换.

快捷键

近期操作

Command + E (mac)

ctrl + E (win)

近期改动

Command + Shift + E (mac)

ctrl + shift + E (win)

文件查找

search Everywhere

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

查找类文件

command + o (mac)

ctrl + n (win)

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

查找文件

这个级别比上面那个更广. 包含全部文件, 如xml等.

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

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

操作记录

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

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

移动行

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

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

查找方法调用处

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

快捷键:

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

方法的跟进

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

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

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

显示方法的參数

当我们使用一个方法的时候, 会在刚開始的时候显示出全部的參数. 可是过一会可能就不存在了. 这个时候假设你想知道下一个參数是什么类型, 或者看一下全部參数.

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

快捷键:

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

假设你还想查看一下方法的文档, 不用跟进源代码, 直接F1键就可以显示出文档.

行的高速操作

高速删除行, 事实上使用剪切功能就能够Command + X

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

多行操作

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

按住option(win为alt)键, 然后鼠标进行区域的选择. 然后进行相应改动就可以.

你可能觉得上面的必须要连续的才干够. 那么假设能够设置多个光标点是否就能够满足你的问题了?

看下图:

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

option + shift + 鼠标点击 (mac)

alt + shift + 鼠标点击(win)

就可以加入一个编辑光标. 最后假设不须要那么就esc就可以关闭多余光标.

高速补全完毕

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

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

实现的功能

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

代码提示

不论什么地方都能够调出的代码提示.

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

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

高速生成变量

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

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

变量的高速操作



上图使用了两次快捷键,

第一次: 跳转到变量的声明处

  • command + B (mac)
  • ctrl + b (win)

第二次: 跳转到变量类型的定义处

  • command + shift + B (mac)
  • ctrl + shift + b (win)

代码折叠

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

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

预览方法定义

假设仅仅想大体了解方法的定义, 而不须要进行方法所在源代码类的跳转显示. 能够通过Command + Y (win快捷键为ctrl + shift + I)来进行预览

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

粘贴板管理

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

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

拆分窗体

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

仅仅须要在标签页上右键. 选择split vertical\horizontal.

变量命名风格

对于成员变量应该m开头. 对于静态成员一般是s开头. 能够这样设置这个风格.

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

查看大纲

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

而且支持模糊搜索. 来进行筛选显示. 能够高速的找到要搜索的方法集.

书签

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

同一时候在Favorites标签中, 也能够找到相应的Bookmarks

能够通过快捷键command + F3 (win为shift + F11)高速调出书签面板, 进行兴许的操作.

高速重构

重构入口

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

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

surround With

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

快捷键

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

Extract

你能够经常使用它,提取出一个方法.

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

watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvc2luYXRfMzU3NjIwNDc=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/SouthEast" alt="这里写图片描写叙述" title="">

是不是非常爽?

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

而代码中, 能够提取各种变量, 參数, 长廊.

代码模板

AS中已经内置了非常多代码模板, 你能够非常嗖嗖嗖的就完毕之前倒背如流的代码. 例如以下一小部分

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

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

代码分析

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

Inspect Code & Code cleanup

Inspect Code能够让IDE分析整个project. 类似于Lint分析, 并会给出大致改动意见等

Code cleanup功能能够进行自己主动的代码修复.

Dependencies

通过Analyze中的几个Dependencies选项. 能够高速分析项目的依赖.

方法调用栈

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

断点调试

高速断点

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

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

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

暂时断点. 假设须要一个仅仅运行一次的断点. 运行完之后断点自己主动取消. 那么能够通过快捷点将当前行作为暂时断点.

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

为了篇幅不是非常长, 调试的部分贴一个解说非常具体的帖子

快捷键查找表

功能描写叙述 keymap相应名字 Mac Win Linux
提示错误解决方式 Show Intention Actions option + enter alt + enter
AS配置界面 Preferences command + , control+alt+S
project项目配置界面 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

Android Studio 经常使用手冊的更多相关文章

  1. Android Eclipse 导入 AS Gradle AAR 库手冊

    序言 这是一篇半技术类文章.众所周知如今Google主推Android Studio开发工具.而Eclipse已经被闲置一阵子了,可是Eclipse项目却还有非常多没有迁移到AS中.而如今一些新的库都 ...

  2. Android Studio 插件开发详解一:入门练手

    转载请标明出处:http://blog.csdn.net/zhaoyanjun6/article/details/78112003 本文出自[赵彦军的博客] 一:概述 相信大家在使用Android S ...

  3. 早来的圣诞礼物!--android 逆向菜鸟速參手冊完蛋版

    我的说明: 让老皮特整理了这么长时间这个手冊,心里挺过意不去的,回头我去深圳带着他女儿去游乐场玩玩得了,辛苦了.peter! 太多的话语,也描写叙述不出这样的感觉了,得找个时间.不醉不归... 注:下 ...

  4. Android APK瘦身之Android Studio Lint (代码审查)

    ******** ******** 第一部分: 瘦身内容介绍 ******** ******** 项目新版本的迭代接近尾声, 因为历史累积问题, 导致有很多无效的资源让已经臃肿的APK变得更肿, 因此 ...

  5. Android开发学习之路-Android Studio开发小技巧

    上一次发过了一个介绍Studio的,这里再发一个补充下. 我们都知道,Android Studio的功能是非常强大的,也是很智能的.如果有人告诉你学Android开发要用命令行,你可以告诉他Andro ...

  6. android常用调试工具fiddle、wireshark和android studio的配置

    Fiddle配置android代理 在wifi的同一个局域网环境的windows主机中安装fiddler,并且启动,如本次192.168.3.14 在android手机端配置代理为该主机 还有一种方式 ...

  7. Android Studio新建一个HelloWorld 程序(App)

    Android Studio新建一个HelloWorld程序(App) 新建 或者直接启动程序(注:如果已有程序,此方法会直接打开最近一次关闭从程序) 更改App名 选择App运行平台 选择模板 更改 ...

  8. Android Studio插件整理

    摘录于习惯沉默的Blog  https://ydmmocoo.github.io/2016/06/28/Android-Studio%E6%8F%92%E4%BB%B6%E6%95%B4%E7%90% ...

  9. [异常解决] android studio检测不到手机的解决办法——ADB驱动自己安装

    用android studio搭建安卓开发环境比eclipse简单的多,仅仅下载一个1个G左右的安装包安装即可. 安装好之后随便建一个hello world工程,想用实体手机调试要点: 选择USB设备 ...

随机推荐

  1. Dreamoon and MRT

    Dreamoon and MRT 题目链接: http://codeforces.com/group/gRkn7bDfsN/contest/212299/problem/B 只需要考虑相对位置,设a0 ...

  2. Low Speed High Torque Hydraulic Motor: Motion Performance

    Crank connecting rod type low speed high torque hydraulic motor is used earlier, which is called Sta ...

  3. java中的缓存技术该如何实现

    1缓存为什么要存在?2缓存可以存在于什么地方?3缓存有哪些属性?4缓存介质? 搞清楚这4个问题,那么我们就可以随意的通过应用的场景来判断使用何种缓存了. 1. 缓存为什么要存在?一 般情况下,一个网站 ...

  4. IOS学习笔记3—Objective C—简单的内存管理

    今天简述一下简单的内存管理,在IOS5.0以后Apple增加了ARC机制(Automatic Reference Counting),给开发人员带来了不少的方便,但是为了能更好的理解IOS内存管理机制 ...

  5. ie8兼容性

    ie8下不支持css的nth-child()样式解决方法一:使用jQuery的nth-child()方法例:$(".ability-head-list ul li:nth-child(1) ...

  6. 【JDBC】java连接MySQL数据库步骤

    java连接数据库步骤 1. 加载驱动 Class.forName("com.mysql.java.Driver"); 或: registerDriver(new com.mysq ...

  7. 算法导论 第一章and第二章(python)

    算法导论 第一章 算法     输入--(算法)-->输出   解决的问题     识别DNA(排序,最长公共子序列,) # 确定一部分用法     互联网快速访问索引     电子商务(数值算 ...

  8. Mac 10.10 配置apache

    配置php 命令行工具:http://blog.csdn.net/evane1890/article/details/38759073 自从系统从OS X Mavericks 10.9升级到OS X  ...

  9. webservice学习第一天

    Webservice Webservice就是一种远程调用技术,他的作用就是从远程系统中获取业务数据 1 课程安排 l 什么是webservice l Webservice入门程序 l Webserv ...

  10. [转]制作一个64M的U盘启动盘(mini linux + winpe +dos toolbox)

    自己动手定制winpe+各类dos工具箱U盘启动盘+minilinux 由于一个64M老U盘,没什么用,拿来发挥余热.如果U盘够大,可以使用功能更强大的mini linux和带更多工具的winpe.这 ...