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中对节点进行操作的相关介绍
Apr 16 Javascript
js操纵跨frame的三级联动select下拉选项实例介绍
May 19 Javascript
Jquery 表单验证类介绍与实例
Jun 09 Javascript
JS Loading功能的简单实现
Nov 29 Javascript
js检测iframe是否加载完成的方法
Nov 26 Javascript
使用grunt合并压缩js和css文件的方法
Mar 02 Javascript
vue2.0 如何把子组件的数据传给父组件(推荐)
Jan 15 Javascript
除Console.log()外更多的Javascript调试命令
Jan 24 Javascript
使用nvm和nrm优化node.js工作流的方法
Jan 17 Javascript
vue使用Proxy实现双向绑定的方法示例
Mar 20 Javascript
详解关于表格合并span-method方法的补充(表格数据由后台动态返回)
May 21 Javascript
JavaScript 防篡改对象的用法示例
Apr 24 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
php将session放入memcached的设置方法
2014/02/14 PHP
适用于抽奖程序、随机广告的PHP概率算法实例
2014/04/09 PHP
特殊字符、常规符号及其代码对照表
2006/06/26 Javascript
JavaScript让IE浏览器event对象符合W3C DOM标准
2009/11/24 Javascript
Jquery validation remote 验证的缓存问题解决方法
2014/03/25 Javascript
AngularJS Ajax详解及示例代码
2016/08/17 Javascript
jsTree使用记录实例
2016/12/01 Javascript
常用的几个JQuery代码片段
2017/03/13 Javascript
详解RequireJS按需加载样式文件
2017/04/12 Javascript
JS实现页面打印(整体、局部)
2017/08/18 Javascript
Vue中的ref作用详解(实现DOM的联动操作)
2017/08/21 Javascript
详解js几个绕不开的事件兼容写法
2017/08/30 Javascript
浅谈JS函数节流防抖
2017/10/18 Javascript
Vue 莹石摄像头直播视频实例代码
2018/08/31 Javascript
JS实现点击拉拽轮播图pc端移动端适配
2018/09/05 Javascript
Intellij IDEA搭建vue-cli项目的方法步骤
2018/10/20 Javascript
Vue打包部署到Nginx时,css样式不生效的解决方式
2020/08/03 Javascript
vue实现抽屉弹窗效果
2020/11/15 Javascript
jQuery实现手风琴特效
2021/01/11 jQuery
[01:04]DOTA2:伟大的Roshan雕塑震撼来临
2015/01/30 DOTA
Python中的map、reduce和filter浅析
2014/04/26 Python
python动态加载包的方法小结
2016/04/18 Python
pandas string转dataframe的方法
2018/04/11 Python
python3+PyQt5实现自定义流体混合窗口部件
2018/04/24 Python
使用Pyhton集合set()实现成果查漏的例子
2019/11/24 Python
Python接口测试结果集实现封装比较
2020/05/01 Python
关于Python解包知识点总结
2020/05/05 Python
css3 clip实现圆环进度条的示例代码
2018/02/07 HTML / CSS
科长竞聘演讲稿
2014/05/16 职场文书
学校食品安全实施方案
2014/06/14 职场文书
计算机应用专业自荐信
2014/07/05 职场文书
先进员工获奖感言
2014/08/14 职场文书
2014年餐厅服务员工作总结
2014/11/18 职场文书
学生会任命书范本
2015/09/21 职场文书
matplotlib如何设置坐标轴刻度的个数及标签的方法总结
2021/06/11 Python
MySQL系列之二 多实例配置
2021/07/02 MySQL