AQuery簡介:jQuery for Android
之前
之后
Android Query簡化了附加事件處理程序的過程。它不會構建出接口或者匿名類,我們只需要確保它們不會把事件處理程序的方法名拼寫錯。
- aq.id(R.id.button).clicked(this, "buttonClicked");
因為屏幕大小和API版本而造成的瑣碎問題會給設備帶來很多麻煩。AndroidQuery通過圍繞API提供了自己的封裝,從而解決了部分問題。例如,函數“aq.hardwareAccelerated11();”會檢測設備是否支持API11,并在合適的時候啟動硬件加速。
當處理不同大小屏幕的時候,開發者經常首先會創建tablet,然后刪除并識別控件,直到它能夠與電話的情況符合。一般這意味著,在試圖從后臺代碼操作控件之前,你需要檢查虛擬樹,以看到它們是否確實已經從axml文件創建。
AndroidQuery會根據條件來鏈接方法(conditionallychainingmethods),讓你可以回避所有檢查。考慮一下這段代碼:
- 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格式的數據。此外,它還包含了針對圖片的單獨支持,我們使用一行代碼就能下載圖片,對其進行緩存,并把它載入到控件中。