Android中的jQuery:AQuery简介


Posted in Javascript onMay 06, 2014

为了向你展示Android Query能够够为用户界面开发做到什么,我们从他们的项目页面上引用了一个例子。

这是在使用AQuery之前的代码:
Android中的jQuery:AQuery简介

这是使用AQuery之后的代码:

Android中的jQuery:AQuery简介

熟悉的jQuery语法再次涌现,兴奋之情有木有。

AQuery项目地址:https://github.com/androidquery/androidquery

Android Query简化了附加事件处理程序的过程。它不会构建出接口或者匿名类,我们只需要确保它们不会把事件处理程序的方法名拼写错。

aq.id(R.id.button).clicked(this, "buttonClicked");

因为屏幕大小和API版本而造成的琐碎问题会给设备带来很多麻烦。Android Query通过围绕API提供了自己的封装,从而解决了部分问题。例如,函数“aq.hardwareAccelerated11();”会检测设备是否支持API 11,并在合适的时候启动硬件加速。

当处理不同大小屏幕的时候,开发者经常首先会创建tablet,然后删除并识别控件,直到它能够与电话的情况符合。一般这意味着,在试图从后台代码操作控件之前,你需要检查虚拟树,以看到它们是否确实已经从axml文件创建。

Android Query会根据条件来链接方法(conditionally chaining methods),让你可以回避所有检查。考虑一下这段代码:

aq.id(R.id.address).text(name).background(R.color.red).textColor(R.color.black).enabled(true).visible().clicked(this, "addressClicked");

如果控件地址不存在,那么后面所有设置方法和事件处理程序都会停止。尽管这可能会让调试更困难,但是它可以极大地减少onCreate方法中的代码行数。

AQuery还可以很容易地调用异步HTTP请求。它包含了针对简单和多个部分POST操作的支持,并且能够接受二进制、JSON、HTML以及XML格式的数据。此外,它还包含了针对图片的单独支持,我们使用一行代码就能下载图片,对其进行缓存,并把它载入到控件中。

Javascript 相关文章推荐
jquery选择器的选择使用及性能介绍
Jan 16 Javascript
动态添加option及createElement使用示例
Jan 26 Javascript
js单词形式的运算符
May 06 Javascript
ajaxFileUpload.js插件支持多文件上传的方法
Sep 02 Javascript
JavaScript极简入门教程(三):数组
Oct 25 Javascript
JavaScript显示当前文档最后修改日期的方法
Mar 19 Javascript
javascript格式化指定日期对象的方法
Apr 21 Javascript
干货分享:让你分分钟学会javascript闭包
Dec 25 Javascript
基于BootStrap的Metronic框架实现页面链接收藏夹功能按钮移动收藏记录(使用Sortable进行拖动排序)
Aug 29 Javascript
用jquery的attr方法实现图片切换效果
Feb 05 Javascript
微信小程序 商城开发(ecshop )简单实例
Apr 07 Javascript
可能被忽略的一些JavaScript数组方法细节
Feb 28 Javascript
JavaScript获取table中某一列的值的方法
May 06 #Javascript
jQuery判断元素是否存在的可靠方法
May 06 #Javascript
js图片自动轮播代码分享(js图片轮播)
May 06 #Javascript
简单的js图片轮换代码(js图片轮播)
May 06 #Javascript
jQuery is()函数用法3例
May 06 #Javascript
使用原生js封装webapp滑动效果(惯性滑动、滑动回弹)
May 06 #Javascript
一些老手都不一定知道的JavaScript技巧
May 06 #Javascript
You might like
安健A254立体声随身听的分析与打磨
2021/03/02 无线电
PHP中使用gettext来支持多语言的方法
2011/05/02 PHP
php实现的CSS更新类实例
2014/09/22 PHP
PHP基于yii框架实现生成ICO图标
2015/11/13 PHP
laravel框架使用极光推送消息操作示例
2020/02/15 PHP
理解 JavaScript 预解析
2009/10/25 Javascript
js解析与序列化json数据(三)json的解析探讨
2013/02/01 Javascript
js截取固定长度的中英文字符的简单实例
2013/11/22 Javascript
js单词形式的运算符
2014/05/06 Javascript
JS实现网页滚动条感应鼠标变色的方法
2015/02/26 Javascript
jquery+CSS3实现3D拖拽相册效果
2016/07/18 Javascript
JS搜狐面试题分析
2016/12/16 Javascript
Vue学习之路之登录注册实例代码
2017/07/06 Javascript
前端常见跨域解决方案(全)
2017/09/19 Javascript
Three.js入门之hello world以及如何绘制线
2017/09/25 Javascript
详解Webpack多环境代码打包的方法
2018/08/03 Javascript
layui的table单击行勾选checkbox功能方法
2018/08/14 Javascript
javascript实现抢购倒计时程序
2019/08/26 Javascript
layer.msg()去掉默认时间,实现手动关闭的方法
2019/09/12 Javascript
vue项目里面引用svg文件并给svg里面的元素赋值
2020/08/17 Javascript
Vue+Element ui 根据后台返回数据设置动态表头操作
2020/09/21 Javascript
在arcgis使用python脚本进行字段计算时是如何解决中文问题的
2015/10/18 Python
Python使用PDFMiner解析PDF代码实例
2017/03/27 Python
python字典操作实例详解
2017/11/16 Python
Python实现的根据文件名查找数据文件功能示例
2018/05/02 Python
pandas进行数据的交集与并集方式的数据合并方法
2018/06/27 Python
在vscode中启动conda虚拟环境的思路详解
2020/12/25 Python
Python实现粒子群算法的示例
2021/02/14 Python
css3实现背景模糊的三种方式(小结)
2020/05/15 HTML / CSS
海蓝之谜英国官网:La Mer英国
2020/01/15 全球购物
单位工程竣工验收方案
2014/03/16 职场文书
党员群众路线承诺书
2014/05/20 职场文书
刑事附带民事起诉状
2015/05/19 职场文书
2015年数学教研工作总结
2015/07/22 职场文书
幼儿园教师培训心得体会
2016/01/21 职场文书
python实现过滤敏感词
2021/05/08 Python