除阿里插件之外这些好用的插件你知道吗?
作者博客
http://www.jianshu.com/u/f408bdadacce
文章目录
0
说明:
俗话说得好,工欲善其事,必先利其器。做开发时间长了,总想找一些快捷方法,只有拥有好用的工具,才能节省开发时间,提高工作效率。我就是一个 追(喜)求(欢)高(偷)效(懒) 的开发人员,正好趁着国庆假期,把平日用到的一些 Android Studio开发插件 整理了一下,分享给大家。
有人会问了,网上也有很多博客在讲Android Studio的插件总结,为什么你还要弄一篇博客呢?我可以告诉大家,网上讲的那些很多都是文字,要么就是给你一个链接,有些还是过时的,有些博客讲的比较全面,可是并没有分门别类去区分,很杂乱;有的博客做了分类,但是都是文字和链接,打开某些链接只是一些简单的图片,很简单。简单看几个图就知道网上的博客写的大概是什么样的(我并没有针对谁,只是说我们写博客给别人看一定要注意一目了然):
有这样的
有这样的
有这样的
有这样的
有这样的
我是一个 追(自)求(娱)极(自)致(乐) 的技术宅,那些博客看的我想砸了电脑,为啥不讲清楚一些,让人可以知道是干嘛用的?这也是我整理这篇博客的原因。
首先,我分门别类,按类型把功能类似的的都放在一起。
其次,我对每一个插件做了一个很精确的讲解,图文并茂。另外把一些注意事项,以及优缺点都写的清清楚楚,这是我自己使用中总结出来的(极个别的除外)。
再次,制作对比图片,以及截图补充说明。网上的有些动图要么太模糊,要么版本太旧,要么就是速度太快看不清。所以我把很多插件的用法自己做了一个录屏,做成gif动图。另外自己也做了一些图片对比图,方便别人查看插件使用前后的区别。(有些图片用的是网上的或者官方的,在此感到抱歉,因为那些图片能够解决问题,也没什么大的问题,所以暂时借用了。)
1
生成java文件,xml布局和生成资源文件:
1.SmartFindViewById
1.选中布局文件名,如选中代码段 setContentView(R.layout.activity_main); 中的 activity_main
2.检测当前光标所在行是否包含布局文件名(通过 R.layout. 前缀判断)
3.Activity setContentView(R.layout.xxx) 方法布局文件参数4.Fragment(包括 support_v
4.fragment) 中 onCreateView 方法中 inflate(R.layout.xxx... 布局参数
5.RecyclerViewAdapter 中 onCreateViewHolder 方法中 inflate(R.layout.xxx... 布局参数
6.弹输入框提示手动输入
SmartFindViewById 使用_无布局参数
这是有布局参数生成的效果:
SmartFindViewById 使用_有布局参数
2.GenerateFindViewById(很完美的一个插件)
1)可输入布局字段、可选中布局文件字段,自动生成有id控件相应的代码(如果鼠标只是放在布局上,按下快捷键,会弹出输入框,提示输入布局; 鼠标双击布局,就不会有弹窗让你输入布局了)2)自动生成onCreate/onCreateView方法3)可编辑变量名4)可选择是否生成OnClick代码5)可选择是否LayoutInflater类型6)支持ButterKnife用法(跟ButterKnife原始用法有区别,慎用)
Activity如果没有onCreate方法,会先生成onCreate方法,再重新操作一次才生成有id控件相应的代码。如下图所示:
GenerateFindViewById 在 Activity 的使用
Fragment如果没有onCreateView方法,会先生成onCreateView方法,再重新操作一次才生成有id控件相应的代码。如下图所示:
GenerateFindViewById 在 Fragment 的使用
3.LayoutCreator
下面这个图是以Activity生成代码作为演示:
LayoutCreator 使用
【缺点】
1) 控件id是什么,用这个插件生成的控件命名就是什么,命名不规范。 2) EditText之类的可以编辑的控件,获取数据的时候,用的是id名字获取的,要手动改一下。(请看示例图上有一处报错的,那个就是。)
4.Android Code Generator
使用步骤
Android Code Generator 生成 Activity 的代码
Android Code Generator 生成 Menu 的代码
(1) 生成的menu需要自己复制粘贴,很麻烦。(2) 每次都要手动设置路径和包名,很麻烦。(3) 生成的点击事件需要自己去导包,很麻烦。(4) 生成的控件如果是button之类的,是这种格式 findViewById(R.id.btn).setOnClickListener(this); 其他的都是很标准的,看起来很不美观,建议改善。(5) 生成的类名不规范,比如我的xml是activity_main2.xml,生成的Activity名字是ActivityMain2Activity,这显然是多此一举,应该把前面那个Activity去掉,并且调整一下顺序,如果是MainActivity2就对了。
5.Android Studio Prettify
Android Studio Prettify 使用
2. 从布局文件中生成对View的声明,这个插件帮助我们自动生成findViewById这种代码。 (有两种提示,一个是View Variables ,一个是View Fields,如下图所示:)
Android Studio Prettify 使用_View Variables
Android Studio Prettify 使用_View Fields
两者的区别:View Variables是直接生成局部变量,而且是排成一排;View Fields是生成全局变量并引用。
6.AndroidAccessors 快速生成get set方法,用法: 在代码中写完Java Bean对象后,按下Alt+Insert后选择AndroidAccessors即可
AndroidAccessors 使用
7.Android Layout ID Converter(这个最麻烦,不推荐使用,仅作为了解)
Android Layout ID Converter 使用
8.BorePlugin(https://github.com/boredream/BorePlugin)
9.Exynap(http://exynap.com/)
Exynap 一个帮助开发者自动生成样板代码的 AndroidStudio 插件。只需要一个快捷方式(Ctrl + Shift + D),输入命令就可以生成代码了。
Exynap使用示范
10.MVPHelper(http://androidwing.net/index.php/27) 一款Intellj IDEA 和Android Studio的插件,可以为MVP生成接口以及实现类,解放双手。具体请查看 Android Studio插件之MVPHelper,一键生成MVP代码(http://androidwing.net/index.php/27)一文
MVPHelper插件使用
11.Innerbuilder(https://github.com/analytically/innerbuilder) InnerBuilder 一款Intellj IDEA 和Android Studio自动生成内部类Builder代码的插件。
InnerBuilder 使用示意图
2
资源文件的管理和自动生成:
1.svgtoandroid(https://github.com/misakuo/svgtoandroid)
Android Studio自带功能
用法介绍
SVG2VectorDrawable 使用
2.Android Holo Colors Generator
Android Holo Colors Generator 使用
3.Android Drawable Importer(36M,有点大) 快速批量导入不同大小的drawable文件。
点击任意一个文件,右键New,然后看最后4 个选项,这就是该插件的4个功能
点击任意一个文件,右键New,然后看最后4 个选项,这就是该插件的4个功能
每个功能的具体演示
4.Android Material Design Icon Generator(14M,这个插件比较大) 是一个可以生成【Material Design图标】的插件 ,使用方式,右键项目,选择Material Design Icon,可以选择icon图标,大小,路径等
*点击任意一个文件,右键New,选择Material design icon,示意图如下:
5.Android Styler 根据xml自动生成style样式(有点复杂,不实用)
*用法:选中要生成样式的内容,复制到styles.xml里面,右键Paste Style或按快捷键 Ctrl + Shift + D,然后输入一个style的名字,最后在xml里面引用这个样式。
6.android-strings-search-plugin(https://github.com/konifar/android-strings-search-plugin) 一个可以通过输入文字找到strings.xml资源的插件
官方的示意图
7.color-manager(https://github.com/shiraji/color-manager)
颜色管理
1.在xml中使用颜色
在xml中使用颜色
2.不在xml中使用颜色
不在xml中使用颜色
8.
AndroidPixelDimenGenerator(https://github.com/succlz123/AndroidPixelDimenGenerator) 根据输入的像素来自动生成Android项目的dimen.xml文件,主要是为了适配国产Android TV盒子的各种分辨率。 这个插件参考自 DimenGenerator(https://github.com/yann9/DimenGenerator)
9.android-selector-intellij-plugin(https://github.com/importre/android-selector-intellij-plugin) 插件生成normal,press和按下水波纹颜色
android-selector-intellij-plugin示例图
下面这几个不常用,作为了解:
DimenGenerator (https://github.com/yann9/DimenGenerator)命令行生成dimen
android-selector-chapek(https://github.com/inmite/android-selector-chapek)
android-selector-chapek的使用
Strings-xml-tools (https://plugins.jetbrains.com/plugin/7498-android-strings-xml-tools)管理Android项目中的字符串资源,它提供了排序Android本地文件和添加缺少的字符串的基本操作。(3年没更新了,这个工具对Android Studio1.2+以上的都不支持,不推荐使用,仅作了解)
3
格式化xml布局工具:
1.LayoutFormatter 一键格式化你的 XML 文件,并且调整Android布局XML文件属性顺序,并且会将默认属性调整到前面,并在行的末尾使用自定义属性。
用法入下:
1. 选择布局文件右键,或者直接在布局文件里面右键 -> Refactor -> Reformat Layout XML. 2. 快捷键: ctrl+alt+F
使用效果对比图如下所示:
使用LayoutFormatter前后对比图
2.LayoutFormat 快速格式化xml代码(因为快捷键和LayoutFormatter 一样,不建议同时安装这两个插件)
功能有两个:
layout format 批量格式化xml
layout format 使用
使用中可能会遇到的问题,在导入插件时,windows下可能会出现插件加载失败的情况。会报下面的错误:
cannot create class "com.shang.layoutformat.LayoutFormat" [Plugin: com.shang.android.layoutformat] com.intellij.diagnostic.PluginException: cannot create class "com.shang.layoutformat.LayoutFormat" [Plugin: com.shang.android.layoutformat]...后面还有一大串,在此省略这是使用的android studio 的运行时的jdk版本低于插件的jdk,换成最新的jre1.8就OK了( 查看android studio 的 java 版本是在:菜单栏 > Help > About)
4
权限:
PermissionsDispatcher plugin 自动生成动态权限的代码
PermissionsDispatcher plugin 使用
5
序列化工具:
Android Parcelable code generator使用
2.Android Parcelable code generator(for kotlin) 使用kotlin开发时自动生成
3.Parcelable序列化,用法和上述类似。
GenerateSerialVersionUID 自动生成Serializable序列化。
【注意】默认情况下Intellij IDEA是关闭了继承了java.io.Serializable的类生成serialVersionUID的警告。如果需要ide提示生成serialVersionUID,那么需要做以下设置:
1、setting -> Inspections -> Serialization issues,将其展开后将 serialzable class without "serialVersionUID"打上勾;
SerializableParcelable Generator的使用
2、将光标放到类名上,按 atl+enter 键,就会提示生成serialVersionUID了
4、SerializableParcelable Generator 自动生成Serializable序列化
6
翻译:
1.ECTranslation(https://github.com/Skykai521/ECTranslation)
使用方式
翻译结果
2.AndroidLocalizationer(https://github.com/westlinkin/AndroidLocalizationer) 可用于将项目中的 string 资源自动翻译为其他语言
AndroidLocalizationer 使用
3.TranslationPlugin (https://github.com/YiiGuxing/TranslationPlugin)又一翻译插件,可中英互译
TranslationPlugin 使用
4.ReciteWords(https://github.com/BolexLiu/ReciteWords)
ReciteWords 使用
翻译记录