位置: 编程技术 - 正文
推荐整理分享在Eclipse或者ADT中使用ButterKnifeZelezny,Android组件初始化从此变得简单易懂!!!!(如何在eclipse),希望有所帮助,仅作参考,欢迎阅读内容。
文章相关热门搜索词:eclipse adt,eclipse中add and remove,如何在eclipse,eclipse adt,eclipse adt,在eclipse中,( )视图显示输出结果,eclipse adt,在eclipse中,( )视图显示输出结果,内容如对您有帮助,希望把文章链接给更多的朋友!
一、起因
想必使用AndroidStudio做开发并且使用ButterKnife的朋友们肯定听说过ButterKnifeZelezny这个组件吧,它可以一键从 布局文件中 生成对于的 View 声明和 ButterKnife 注解。
详情请看图:
真是太方便了!!!!一键生成啊有木有!!!!脱离苦海啊有木有!!!!
但是等等,我到现在还是不习惯用AndroidStudio,虽然会用但是正式开发项目,还是更加喜欢Eclipse的开发方式,于是我就在想,Eclipse有没有这样的插件呢?
显然,我想多了。
不过既然没有,那就自己做一个吧。
二、思路
俗话说“解铃还须系铃人”,既然要思路,自然就是从ButterKnifeZelezny来了,在我看来ButterKnifeZelezny主要就是几个步骤
1.解析XML
2.分析组件
3.生成ButterKnife注解
那么,我可不可以利用批处理和JAVA文件结合的方式做一个批处理文件,只要把布局文件拖入批处理文件中就可以解析出这个布局文件中有哪些组件设置了ID属性,并把这些组件和ID提取出来,最后利用字符串拼装技术把它组合成我要的写法,然后写入到系统的黏贴板中,最后由用户CTRLV 黏贴到指定的Activity中去就可以了?
我看行!
三、开整
思路已经有了,剩下的就是开始做了,首先当然要解决的是XML解析问题。
基本上不用想太多,利用DOM4J解析就可以了。
先建立一个Java Project
然后添加工具类
LayoutUtil.java(解析布局文件的工具类)
既然可以解析XML,那么下一步要做什么呢?当然是编写拼接字符串的工具类了,这个类也是生成ButterKnife注解式的核心类,如果你想做别的方式的写法或者原生的写法,修改这个类就可以了。
SpellUtil.java
解析也有了,拼接也有了,剩下的要做什么呢?
当然就是把拼接好的字符串复制到黏贴板上了,还是个工具类。ClipBoard.java
OK,万事俱备,剩下的就是要写bat文件和调用的Main方法入口了。
也非常简单
CreateLayooutXml.java
到此为止,Java方面要做的事情已经做完了,注意:这句话的意思就是编译的时候,这参数要从批处理文件中传入,传入的内容其实就是布局文件的绝对路径。
剩下的事情就是要写一个批处理文件,然后可以传入文件路径,可以执行CreateLayoutXml.java中的Main函数就可以了。
ButterKnife_Jia.bat
好了,很好,基本上我们已经完成了这个工具的全部编码工作,这个工具的文件工程结构是这样的:看上图,lib中放的是dom4j.jar,util中放置的是.class文件,bat文件放置在最外边。
然后开始执行bat文件
OK,批处理文件执行到这步了,等待你传入一个布局文件,只要从你的eclipse里的工程中的layout文件夹下随便拖拽一个xml到bat文件中,并按下回车就可以了,接着你就会看到
如上图所示,你的ButterKnife的写法的注解已经生成了,并且已经在你的黏贴板中了,还等什么呢,找到对应的Activity,CtrlV吧!!!!
下边是我CtrlV的哦:
@InjectView(R.id.loc_btn)Button loc_btn;@InjectView(R.id.loc_info)TextView loc_info;
四、总结
其实这个小工具没什么技术难点,关键的地方还是思路和JAVA的基本功,相信大家看完之后,也可以写出很多类这样的小组件,加油!
资源下载路径:
版权声明:本文为博主原创文章,未经博主允许不得转载。
[教程] 关于如何解决Adb无法连接的解决方案 转载:
android 一个TextView中显示不同颜色的字体 项目中用到的,一个Button中显示的字体颜色是不同的,想着在布局中设置但是感觉很头疼,就百度了下,原来还可以用Html还可以添加图片什么的,就不
Gitlab管理Android源码 Gitlab管理Android源码这个想法由来已久,因为以前都是简单粗暴地将repo改成git单个大仓库来管理。这样做之后那么和Android上游就基本断绝关系了,合并
标签: 如何在eclipse
本文链接地址:https://www.jiuchutong.com/biancheng/370955.html 转载请保留说明!上一篇:Android程序:数据存储之SQLite的内置函数操作(安卓应用程序数据)
下一篇:android 一个TextView中显示不同颜色的字体(android 一个activity多个layout)
友情链接: 武汉网站建设