之前写的Android Studio自动生成ID插件系列只写了 ButterKnife 和 Data Binding
Library。拖到今天才有空,就顺便把 Android code Generator 和Android Layout ID Converter 给补充完整了。
一、安装Android code Generator插件
在File—Setting—Plugins输入”Android code Generator”,进行安装。重启Android
Studio后我们就可以开始使用这个插件了。
二、使用Android code Generator
1、在布局编辑器使用
在布局文件里面添加几个控件,然后在activity_main文件里任意一个地方右键—— Generator Android
code——Activity/Adapter/Fragment(可以根据具体布局选择使用,在这里是在Activity页面,所以选择Activity),也可以和ButterKnife结合使用(ButterKnife
Activity/Adapter/Fragment)。
3、在menu文件中使用
正常来说,这些操作都是相当“傻瓜式的”,是应该没毛病的。然而!!!却出现下面这种情况:
What
happened?我确定这不是我要的结果。然后就是解决问题的时候了,首先检查了一遍代码,没有问题。平时也是这么写的。那么到底是什么情况呢?找不出来就只能删掉Button控件先来个简单的再试一下。
居然没有毛病了。
那么问题就是在Button控件那几句代码上了。看了几遍大的疑问就是在“我是按钮”这几个中文上面了,试着改成英文。
发现,果然没有问题了。所以,注意一下,在使用Android code
Generator这个插件的时候,布局里面就不要出现有中文了,规范点写就是通过”@string/btn_text”去显示内容。
仔细观察一下自动生成的代码,可以发现:
(1)可自动生成findViewById方法;
(2)像Button控件会自动实现 View.OnClickListener,生成onClick(View view)方法;
(3)可以自动生成Activity,Adapter,Fragment 的java文件。
(4)在修改布局文件内容后,可以重新生成文件替换原来的。
其实,这个插件功能还是很实用方便的,现在这里只是略举一二出来,毕竟要根据具体要求来具体使用不同的功能。下面我们就在介绍一下另外一个插件:Android
Layout ID Converter。
(一)安装插件
这个跟Android code Generator 的步骤是一样的。
在File——Setting——Plugins输入”Android Layout ID Converter” ,进行安装.重启Android
Studio后我们就可以开始使用这个插件了。
(二)使用
Android Layout ID Converter 使用起来相对简单,但是范围只用于layout 布局文件中。
在写好的布局文件中选中右键——选择 Convert Android layout xml , 在弹出的对话框中选择你要生成的不同类型的内容,
然后点击确定。相应的代码就会自动复制在我们的粘贴板上,之后到我们相应的Activity或者Fragment中粘贴(Ctrl+V)即可。
比如我在这里有MainActivity 和 IndexAdapter这两个类。直接看下面的效果图:
(1)默认选择的 ’As is(None)’、’private’
(2)选择 ’m’、’package private’
(3)选择 ’_(underscore)’、’protected’
仔细对比一下,其实就是声明变量的时候变量命名方式和访问权限修饰符的不同而已。可以根据自己需要去选择。
再生成一下Adapter,其实它这个并没有能够帮我们真正的去生成我们需要的holder,需要我们自己在 ’findViewById’ 加上
’view.’
到这里基本上Android code Generator 和 Android Layout ID Converter的基本使用就介绍完了。
对比Android code Generator 和 Android Layout ID Converter,其实 Android code
Generator 的功能更智能,更广泛一些。
但是总体上来说使用 ButterKnife 和 Data Binding Library 更方便一些,ButterKnife
使用注解,使得代码简洁了很多。Data Binding Library 更多的是在layouts文件实现声明引用。有时间的朋友可以深入的学习下Data
Binding Library,后面熟悉了使用就很方便了。
顺便介绍下一个翻译必备的插件——ECTranslation。憋说话,看图!!
文中图片素材来源网络,如有侵权请联系删除