转载:http://www.jianshu.com/p/4243f3b52644
Android Studio 提供了一个非常方便的功能帮助我们导入或者导出设置。因此我们在安装一个新的Android Studio 的时候通常会导入一个之前的设置。
当我在配置我的 Android Studio 的时候,下面的一些配置或许对你有一定的帮助。
显示行号
<ignore_js_op>
未显示行号!
<ignore_js_op>
显示行号!
配置方法:
- File | Settings打开设置
- 选择Editor | General | Appearance
- 勾选Show line numbers
<ignore_js_op>
ps:在编辑区域最左侧右键选中Show line numbers也可以让当前打开的文件显示行号,不过这是一个临时设置,当前文件关闭后便失效。
驼峰选择
<ignore_js_op>
设置
注意:如果你仍然希望当鼠标在单词上双击之后选中整个单词,需要作如下设置:
命名前缀我们通常会遵循 Android 官方关于编码风格的指导来进行字段命名。在 Android 源码中我们可以看到通常成员变量都是以‘m’开始。其实 Android Studio 可以自动在帮我们生成字段名称的时候加上自定义的前缀,如:
在 Android Studio 中,我们可以通过Alt + Enter和Control + Alt + O进行导包和清除无用导包,但我们都生活在2016年了,这些事情应当快速自动完成。
Android 开发中,我们通常会使用驼峰命名法对变量进行命名,但是当我们通过Ctrl + Left/ Right键改变字符选择区域的时候 Android Studio 默认不支持‘驼峰’单词的选择。
不支持驼峰选择
支持驼峰选择
配置方法
- File | Settings打开设置
- 选择Editor | General | Smart Keys
- 选中Use “CamelHumps” words
<ignore_js_op>
设置
- File | Settings打开设置
- 选择Editor | General
- 取消选中‘Honor Camel Humps words settings when selecting on double click’
命名前缀我们通常会遵循 Android 官方关于编码风格的指导来进行字段命名。在 Android 源码中我们可以看到通常成员变量都是以‘m’开始。其实 Android Studio 可以自动在帮我们生成字段名称的时候加上自定义的前缀,如:
- 非共有,非静态的成员变量以m开始
- 静态成员变量以s开始
<ignore_js_op>
命名前缀
配置方法:
- File | Settings打开设置
- 选择Editor | Code Style | Java
- 选择Code Generation标签
- 给普通Field添加一个m前缀,给Static filed添加一个s前缀
<ignore_js_op>
快速导包:
在 Android Studio 中,我们可以通过Alt + Enter和Control + Alt + O进行导包和清除无用导包,但我们都生活在2016年了,这些事情应当快速自动完成。
<ignore_js_op>
未开启imports on the fly
<ignore_js_op>
开启imports on the fly
配置方法
-
File | Settings 打开设置
-
选择Editor | General | Auto Import
-
勾选Optimize imports on the fly
-
勾选Add unambiguous imports on the fly
<ignore_js_op>
设置
Log 颜色
下面是个人的一些补充:
代码配色 Android Studio 中默认的代码配色个人感觉已经很和谐,但这个东西仁者见仁。比如有的朋友会觉得 java 代码中局部变量的默认的白色不太便于快速与其它代码进行区分,这时候就需要自定义 java 代码颜色,这里以局部变量为例。
Darcula 主题中 Logcat 的默认配色只有红白两种颜色,不太便于我们区分Log 的类型。
Darcula 主题配色
我建议大家采用之前 Android Holo 主题那种鲜明的配色。
<ignore_js_op>
Holo 主题配色
配置方法
- File | Settings打开设置
- 选择Editor | Color & Fonts | Android Logcat
- 点击Click on Save As…按钮创建一个新的配色Scheme
- 按照下面的表格修改对应的颜色( 修改之前需要取消勾选Use inherited attributes)
<ignore_js_op>
代码配色 Android Studio 中默认的代码配色个人感觉已经很和谐,但这个东西仁者见仁。比如有的朋友会觉得 java 代码中局部变量的默认的白色不太便于快速与其它代码进行区分,这时候就需要自定义 java 代码颜色,这里以局部变量为例。
<ignore_js_op>
默认配色
<ignore_js_op>
自定义配色
配置方法
- File | Settings打开设置
- 选择Editor | Color & Fonts | Java
- 点击Click on Save As…按钮创建一个新的配色Scheme
- 展开下方的Variables选择Local variable
- 设置右侧的Foreground颜色
<ignore_js_op>
设置
工程模板
Android Studio 创建Module时并没有将 Android 开发中常用的文件目录全部生成,比如默认只生成了一个drawable文件夹,常用的drawable-hdpi等文件夹需要我们自己创建。正如前文的作者所言,这都2016年了,这些事情应该自动完成,毕竟我们都很‘懒’!
<ignore_js_op>
默认结构
<ignore_js_op>
自定义结构
配置方法1
配置方法2
这两种方法的区别是,第一种方式可以在文件夹中加入相应的图片,但是配置稍显繁琐,第二种方式配置简单,但是只能创建目录,不能包含默认图片。
当然,通过类似的方式我们还可以在创建Module的时候做很多事情,比如:
- 进入 Android Studio 安装目录
- 依次进入plugins | android | lib | templates | gradle-projects | NewAndroidModule | root | res
- 在res文件夹下创建drawable-hdpi等文件夹(可选:从对应的mipmap文件夹中拷贝iclauncher.png到创建的drawable文件夹中)
- 回到NewAndroidModule目录,用编辑器打开recipe.xml.ftl文件
- 加入以下配置
配置方法2
- 进入 Android Studio 安装目录
- 依次进入plugins | android | lib | templates | gradle-projects | NewAndroidModule
- 用编辑器打开recipe.xml.ftl文件,并加入以下配置
这两种方法的区别是,第一种方式可以在文件夹中加入相应的图片,但是配置稍显繁琐,第二种方式配置简单,但是只能创建目录,不能包含默认图片。
当然,通过类似的方式我们还可以在创建Module的时候做很多事情,比如:
- 在colors.xml文件中生成常用颜色
- 在build.gradle文件中生成自定义配置
- 在.gitignore文件中生成自定义忽略配置
- 等等…
活动模板:
Android Studio 中默认提供了很多非常方便的活动模板(Live Templates),例如,我们输入sout后按enter键,Android Studio 会自动帮我们写入System.out.println();
<ignore_js_op>
其实sout就是AS自带的一个活动模板。
<ignore_js_op>
由此可以看出,活动模板就是我们常用代码的一个缩写。开发中有很多代码都会重复出现,因此自定义合适的活动模板能很大程度上避免我们很多重复的体力劳动。那么问题来了,如何自定义?这里我们以Handler为例。下面是在Activity中一个合格的Handler该有的样子:
至于原因我就不再重复了,网上有太多的文章有讲过。现在如果我只希望输入一个‘psh’就自动出现上面这段代码的话,我应该这么做:
配置方法
Android Studio 中默认提供了很多非常方便的活动模板(Live Templates),例如,我们输入sout后按enter键,Android Studio 会自动帮我们写入System.out.println();
<ignore_js_op>
其实sout就是AS自带的一个活动模板。
<ignore_js_op>
由此可以看出,活动模板就是我们常用代码的一个缩写。开发中有很多代码都会重复出现,因此自定义合适的活动模板能很大程度上避免我们很多重复的体力劳动。那么问题来了,如何自定义?这里我们以Handler为例。下面是在Activity中一个合格的Handler该有的样子:
[Java] 查看源文件 复制代码
01
02
03
04
05
06
07
08
09
10
11
12
13
14
15
|
private static class MyHandler extends Handler { private WeakReference<MainActivity> activityWeakReference; public MyHandler(MainActivity activity) { activityWeakReference = new WeakReference<MainActivity>(activity); } @Override public void handleMessage(Message msg) { MainActivity activity = activityWeakReference.get(); if (activity != null ) { } } } |
至于原因我就不再重复了,网上有太多的文章有讲过。现在如果我只希望输入一个‘psh’就自动出现上面这段代码的话,我应该这么做:
配置方法
- File | Settings 打开设置
- 选择Editor | Code Style | Live Templates
- 点击最右侧的加号并选择Template Group
- 在弹出的对话框中输入一个活动模板分组的名称,如custom
- 在左侧选中上一步中创建的custom分组,点击右边的加号
- 选择Live Template,在Abbreviation中对输入psh
- 在Description中输入这个活动模板的描述
- 在Template text中输入以下代码
<ignore_js_op>
- 点击下方的Define按钮,选中java表示这个模板用于java代码
- 点击右侧的Edit variables
- 选择Expression下拉框中的className并勾选Skip if…
这个操作的作用是,AS会自动将我们在上一步中用’$’符包裹的className自动替换为当前类不含包名的类名
点击Apply和Ok让设置生效。
至此,一个我们自定义的custom模板组中的psh活动模板就定义完成了。下面我们来验证一下,见证奇迹的时候到了:
<ignore_js_op>