位置: 编程技术 - 正文

在Eclipse或者ADT中使用ButterKnifeZelezny,Android组件初始化从此变得简单易懂!!!!(如何在eclipse)

编辑:rootadmin

推荐整理分享在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提取出来,最后利用字符串拼装技术把它组合成我要的写法,然后写入到系统的黏贴板中,最后由用户CTRL&#;V 黏贴到指定的Activity中去就可以了?

我看行!

三、开整

思路已经有了,剩下的就是开始做了,首先当然要解决的是XML解析问题。

基本上不用想太多,利用DOM4J解析就可以了。

先建立一个Java Project

然后添加工具类

LayoutUtil.java(解析布局文件的工具类)

既然可以解析XML,那么下一步要做什么呢?当然是编写拼接字符串的工具类了,这个类也是生成ButterKnife注解&#;式的核心类,如果你想做别的方式的写法或者原生的写法,修改这个类就可以了。

在Eclipse或者ADT中使用ButterKnifeZelezny,Android组件初始化从此变得简单易懂!!!!(如何在eclipse)

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,Ctrl&#;V吧!!!!

下边是我Ctrl&#;V的哦:

@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)

  • 纳税信用等级分别为
  • 增值税额的计算公式写销售额除以1.13*0.13对吗
  • 代扣代缴增值税是什么意思
  • 文化事业建设费怎么申报
  • 个人抬头的发票可以报销吗
  • 增值税抵扣可以跨月吗
  • 支付宝企业账户的钱怎么取出来
  • 印花税缴款了发现报错了怎么办?
  • 多交的季度所得税怎么算
  • 原材料没发票能结转成本吗?
  • 个人取得投资收益是否缴纳个税
  • 存货算动产吗
  • 企业所得税本季度可以弥补上季度亏损吗?
  • 营改增后取得土地转让
  • 专用发票的税票号码看哪里?
  • 信用证和银行承兑汇票的区别如何做分录
  • 销售二手车需要注意什么
  • 销售折扣购买方的红字通知单如何开
  • 保险公司的税收是多少
  • 免抵退免抵额何时申报附加税?
  • 华为鸿蒙系统怎么样
  • 在国内和国外
  • linux和windows关系
  • 苹果手机送修了会给备用机吗
  • cpu资源占用高怎么办
  • php总结
  • 写一篇推荐书
  • win11系统怎么删除账户
  • 残疾人就业保障金怎么申报
  • win10telnet不是内部或外部命令教程
  • ctrl起什么作用
  • win7纯净版系统
  • vue3.0解决跨域
  • php __destruct
  • 家具折旧费是什么意思
  • 永久性差异会计分录
  • php常见的错误级别
  • php读取文件
  • 一维卷积padding
  • 递延所得税负债是什么科目
  • vue @hook
  • php之间传递数据
  • 技术使用费所得怎么算
  • PostgreSql新手必学入门命令小结
  • 专项应付款转资本公积需要缴纳所得税
  • 库存商品一直没有销售怎么办
  • 融资租入固定资产的改建支出
  • 餐饮行业采购
  • 建筑公司工资如何
  • 存款基准利率是不是利息
  • 外贸企业的汇率怎么算
  • 电子承兑汇票是24小时签收吗
  • 待摊费用和预付费用的区别
  • 企业清算状态还要报税吗
  • 评估入账的无形资产能摊销吗
  • 建账有哪几种方法
  • fcitx输入法配置
  • Win7系统重装后开不了机
  • linux进程管理器
  • 系统问题怎么处理
  • ubuntu中no such file or directory
  • ubuntu20.04怎么用
  • win7系统无法开机解决方法
  • cocos2dx-js
  • opengl入门教程(精)
  • 安卓布局优化
  • cssdeck
  • jquery延时器
  • js中创建对象的几种方法
  • 批处理 写入文件
  • Node.js中的事件循环是什么
  • shell脚本显示进度条
  • python遍历列表判断相同元素
  • node.js操作
  • 安卓绘制图表
  • python常用操作运算符
  • python内建函数 代码
  • python结合了什么的高级语言
  • 非税收入发票盖什么章
  • 江宁市民中心周末可以办户口吗?
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设