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 相关文章推荐
JS关键字变色实现思路及代码
Feb 21 Javascript
用IE重起计算机或者关机的示例代码
Mar 10 Javascript
Javascript遍历table中的元素示例代码
Jul 08 Javascript
JavaScript中split() 使用方法汇总
Apr 17 Javascript
javascript控制层显示或隐藏的方法
Jul 22 Javascript
javascript中不易分清的slice,splice和split三个函数
Mar 29 Javascript
浅谈jQuery中hide和fadeOut的区别 show和fadeIn的区别
Aug 18 Javascript
javascript深拷贝(deepClone)详解
Aug 24 Javascript
Javascript将字符串日期格式化为yyyy-mm-dd的方法
Oct 27 Javascript
vuejs简单验证码功能完整示例
Jan 08 Javascript
使用pm2自动化部署node项目的方法步骤
Jan 28 Javascript
vue2.x数组劫持原理的实现
Apr 19 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
phpMyAdmin 安装教程全攻略
2007/03/19 PHP
PHP中批量生成静态html(命令行下运行PHP)
2014/04/19 PHP
php+Mysqli利用事务处理转账问题实例
2015/02/11 PHP
thinkPHP自定义类实现方法详解
2016/11/30 PHP
PHP使用PHPExcel实现批量上传到数据库的方法
2017/06/08 PHP
基于Jquery的仿照flash放大图片效果代码
2011/03/16 Javascript
Javascript学习笔记-详解in运算符
2011/09/13 Javascript
js获取键盘按键响应事件(兼容各浏览器)
2013/05/16 Javascript
js获取上传文件大小示例代码
2014/04/10 Javascript
jquery操作HTML5 的data-*的用法实例分享
2014/08/17 Javascript
javascript搜索框点击文字消失失焦时文本出现
2014/09/18 Javascript
用原生JS获取CLASS对象(很简单实用)
2014/10/15 Javascript
jquery图片轮播特效代码分享
2020/04/20 Javascript
深入理解关于javascript中apply()和call()方法的区别
2016/04/12 Javascript
js数组常用最重要的方法
2018/02/04 Javascript
详解给Vue2路由导航钩子和axios拦截器做个封装
2018/04/10 Javascript
vue实现路由不变的情况下,刷新页面操作示例
2020/02/02 Javascript
Python实现的彩票机选器实例
2015/06/17 Python
python购物车程序简单代码
2018/04/18 Python
python数字图像处理之骨架提取与分水岭算法
2018/04/27 Python
使用Scrapy爬取动态数据
2018/10/21 Python
pycharm 批量修改变量名称的方法
2019/08/01 Python
导入tensorflow:ImportError: libcublas.so.9.0 报错
2020/01/06 Python
python+selenium定时爬取丁香园的新型冠状病毒数据并制作出类似的地图(部署到云服务器)
2020/02/09 Python
python数据抓取3种方法总结
2021/02/07 Python
python 中 .py文件 转 .pyd文件的操作
2021/03/04 Python
使用SVG实现提示框功能的示例代码
2020/06/05 HTML / CSS
c++工程师面试问题
2013/08/04 面试题
学生个人求职自荐信格式
2013/09/23 职场文书
简历自我评价模版
2014/01/31 职场文书
《在山的那边》教学反思
2014/02/23 职场文书
会计学自荐信
2014/06/03 职场文书
小学学校评估方案
2014/06/08 职场文书
2014年卫生工作总结
2014/11/27 职场文书
2015年上半年计生工作总结
2015/03/30 职场文书
MySQL索引失效场景及解决方案
2022/07/23 MySQL