Android Studio 的 10 个你很有可能不知道的技巧

本文首发:http://prototypez.github.io/2016/04/19/about-10-things-you-probably-didn-t-know-you-could-do-in-android-studio/

转载请注明出处

Android Studio 是每一个 Android 开发每天都要使用的工具,但是即使你是一个经验丰富的开发人员,你也可能已经错过了许多可以节约生命的技巧,这篇文章也许就可以帮助你掌握它们其中的一部分。我不会一字一句地翻译,而是以最简洁易懂的方式介绍给你,同时提供必要的注解和延伸,让你可以在一遍快速阅读之后迅速掌握。

当你想不起来某个功能怎么用的时候

如果你是 Windows/Linux 用户, 那么请按Ctrl + Shift + A, 如果你是 Mac 用户,那么请按Command + Shift + A,在这个万能的输入框内可以输入你想要执行的操作(当然是英文),列表中会显示对应的可选操作以及快捷键。不仅仅是操作,如果你只是想改变某个设置的时候,也可以使用这个功能,例如你想设置Gradle为 offline work 的话,可以在输入框输入offline,对应的的结果中选择Toggle Offline Work即可,再比如你需要打开粘贴代码时候的Auto Import功能,那么也只要在输入框中输入Auto Import然后选择对应项即可。

修改快捷键

在 Android Studio 中所有快捷键都是可以自定义的。请唤起伟大的Ctrl + Shift + A,输入keymap,选择位于Settings > Keymap的那个选项,这里能看到所有的快键键,一般不建议在原有快捷键方案上直接修改快捷键,而是拷贝一份现有的方案再在上面改,在Keymaps的下拉框中选择一份现有的方案(默认为 Default),点击右边的Copy,然后在列表中需要修改的快捷键的项目上右键,选择Add Keyboard Shortcut,然后就可以设置自己喜欢的快捷键了,如果设置的快捷键与其它按键有冲突,会以红色错误信息提示。

由于列表中快捷键数量比较多,所以我们还可以利用右边的搜索框进行搜索,例如需要修改基本自动补全的快捷键我们只要输入Basic,就可以在结果中找到对应的项了。

你需要了解的自动补全

一般使用 Android Studio 的时候,自动提示会在你想要提示的时候自动出现,比如输入Log.,就会提示一堆比如Log.d(), Log.e, Log.i()。不过如果你在自动提示的时候手一抖选错的话,比如想选Log.d()结果选了Log.e(),你是不是会把.e()都删掉,然后再输入一个.,其实遇到这种需要重新手动呼起自动补全的情形只需要使用Ctrl + Alt + 空格就可以了。

其实还有两种方法:一是基本补全Ctrl + 空格,然而 Windows 用户表示不开心,因为这和 Windwos 系统切换输入法快捷键冲突,如果你不想修改这个快捷键,那么使用Ctrl + Alt + 空格作为替代,如果你想修改这个快键键,那么你可以使用上一小节的方法设置新的快捷键,在Keymaps界面搜索Basic,然后在过滤后的结果中选择Code->Completion->Basic进行设置;另一种方法是智能补全Ctrl + Shift + 空格, 不过智能补全远远不止这个功能,当你调用方法时,可以使用智能补全在当前上下文联想符合该方法形参类型的变量。

在自动提示以后使用 Tab 键替换当前的方法或值

如果我们手动呼出自动补全的时候,当前位置已经有对应的方法或者变量(比如原来调用Obj的A方法,然后我们把光标定位到A方法的位置,呼出自动补全,希望自动补全的B方法代替A方法),这时候如果我们选中补全的的项目,按下回车,那么补全的内容会插入到原来内容的前面,这不是我们想要的内容,其实这时候不应该按回车,而是Tab

当你写完了一行代码

这种情况非常常见,当你写完一行代码的时候,光标并不在当前行的末尾,比较常见的是光标右边还有 N 个 右括号,这时候你会怎么办?可能你会使用方向键把光标移动到行末,然后手动输入一个;。其实有更简单的方案,那就是Ctrl + Shift + 回车,这个快捷键会帮助你自动补全当前表达式所缺的部分,包括在行末输入;,值得一提的是,该快捷键对ifelseforwhile控制循环同样有效。

还有一种情况,光标并不在行尾,但是你希望可以在下一行插入一个空行,Shift + 回车可以帮你完成这个任务。

三个定位的小技巧

使用 4 个方向键定位光标是我们最熟悉的方法,但是其实可以更方便的。在按方向键的同时按住Ctrl,可以一个单词一个单词移动;在按上下键的同时按住Alt, 可以一个节点(方法或者字段)一个节点移动;如果在按上下键的同时按住Shift + Ctrl,可以把当前行和上下行交换位置。

根据后缀自动生成的代码模板

日常使用编辑器的过程中,有很多固定格式的写法,例如if-else, for 等等,使用代码模板可以更快得帮助我们生成期望的代码。举个例子,先输入一个集合类型的变量并且加上后缀.fori,这时候自动提示会提示按照该集合类型生成for循环,同理,布尔类型的表达式加上.if后缀也可以生成以该表达式为条件的if语句。

实际上,上面这两种代码模板是IntelliJ自带的,Android Studio 还提供了许多与 Android 有关的代码模板,比如生成ToastParcelable的模板,查看所有可用模板以及自定义模板的方法是首先Ctrl + Shift + A呼出万能的搜索框,输入Live templates,选择位于SettingsLive Templates,在这里就可以看到所有可用的代码模板。

Debug 时自定义对象显示的技巧

在调试代码的时候,我们常常需要查看一个对象的值。尤其是自定义的对象,我们常常没有实现它的toString方法,那么这个对象在 IDE 的值就是 ClassName:HashValue 这个样子。我们需要点开这个对象查看它里面各个成员的值。在不实现toString方法的情况下其实有更好的方法。在 Debug 的Variable窗口中右键需要查看的对象,选择View as,既可以设置该对象在 Debug 状态下显示的方式。

总结

感谢你看到这里 :)

时间: 2024-10-19 19:44:13

Android Studio 的 10 个你很有可能不知道的技巧的相关文章

微信的7个隐藏技巧,真的很实用,不知道的可惜了

微信是很多人天天都在用的工具,在微信中,有很多实用的小功能,也有很多不为人知的隐藏功能.今天,就带大家来了解一下微信的隐藏功能,让你能够更加方便的使用微信. 1:红包捡漏 发红包是我们微信聊天的一种常见操作,碰到节假日,红包太多根本领不过来怎么办?打开正在发红包的群,点击右上角的“...”然后点击“查找聊天记录”,再选择“交易”,如果有没显示“已被领完”,那就证明还可以再领,学会这个技巧,就再也不用翻聊天记录找红包了. 2:微信表情包 在我们的日常聊天中,表情包可是我们聊天的润滑剂,一些可爱有趣

《Android Studio开发实战 从零基础到App上线》资源下载和内容勘误

http://blog.csdn.net/aqi00/article/details/72907534 http://blog.csdn.net/aqi00/article/details/73065392 版权声明:本文为博主原创文章,未经博主允许不得转载. 目录(?)[+] 资源下载 下面是<Android Studio开发实战 从零基础到App上线>一书用到的工具和代码资源:1.本书使用的Android Studio版本为2.2.3,因为Android官网现在不提供该版本的下载,所以博主

最完整Android Studio插件整理 (转)

转自:http://blog.csdn.net/alpha58/article/details/62881144 现在Android的开发者基本上都使用android Studio进行开发(如果你还在使用eclipse那也行,毕竟你乐意怎么样都行).使用好Android Studio插件能大量的减少我们的工作量. 1.GsonFormat 快速将json字符串转换成一个JavaBean,免去我们根据json字符串手写对应javaBean的过程. 使用方法:快捷键Alt+S也可以使用Alt+Ins

Android studio:Groovy 与 Gradle 基础【三】

转载:http://www.apkbus.com/forum.php?mod=viewthread&tid=255064&extra=page%3D2%26filter%3Dauthor%26orderby%3Ddateline&_dsign=276e9e2e 相信看过前一篇 <Android Studio 与 Gradle 深入>的同学,有一部分就会遇到我初识 Gradle 时的困惑:代码我也依稀看得懂,但就是不知道还能这样写,为什么这样写. 问题与解决方案 回想我在

#android learning day 1 #Android Studio功能

Android Studio提供了Windows.Mac OS X.Linux版本,用户根据自己的系统选择下载. 下载和安装安装请参考: http://developer.android.com/sdk/installing/studio.html#Installing Android Studio 的界面: 关于android studio: 1.从版本库Check项目,这个功能很强大.可以直接从SVN,GIT库中直接得到代码创建工程. 2.Android Studio 和Eclipse+AD

GenyMotion 配合 Android Studio 的安装

众所周知,Android Studio 自带的模拟器对内存和CPU消耗都很大却并没有很好的效果,简直是谷歌为了卖手机设计的.而Geny Motion 对机能的要求大大降低,又不会像自带模拟器那么卡.Geny Motion官方支持Android Studio,但是因为某种很缺心眼的原因.......安装过程中会出现大麻烦,这里讲讲. 1.Android Studio 的安装 太过宏大,不提,假设你安好了. 2.Geny Motion的安装 https://www.genymotion.com/#!

导入开源库到基于Android Studio构建的项目中

前两天,谷歌发布了Android Studio 1.0的正式版,也有更多的人开始迁移到Android Studio进行开发.然而,网上很多的开源库,控件等还是以前的基于Eclipse进行开发,很多人不知道怎么导入到自己的基于Android Studio项目中来,微博上也有人私信我,让我来写写,正好今天回来的比较早,就写写吧.主要介绍一下常见的一些导包的场景. 前言 --project //项目目录 | build.gradle //项目的gradle配置文件 | settings.gradle

Android Studio如何引用jar包(非gradle)

这个和eclipse差别就大了,估计很多人刚开始用Android Studio都对这个设置很苦恼. 直接上图吧,先通过File->Projcet structure打开工程结构界面,或者也可通过快捷图标打开. 如下图,选中Libraries,然后再点击+号,选择Java. 选择Java后,会弹出下图的对话框,选中你jar包所在的libs文件夹,然后点ok(最好在工程下建一个libs的目录,把你要引用的jar包都放到这个目录中): 点完ok后,会弹出下面的对话框让你选择引入的jar包要关联的哪个m

在Ubuntu17.04上搭建Android Studio开发环境

在实验课上都是在Ubuntu环境下,虽然之前都是在windows系统里写android程序,但是我还是准备在Ubuntu下配置一个Android Studio环境. 通过百度,我先看到一个最简单的方式,是在terminal中输入如下命令: sudo apt-add-repository ppa:paolorotolo/android-studio sudo apt-get update sudo apt-get install android-studio 但是运行结果是: 失败了. 接着我就换