為了向你展示Android Query能夠夠?yàn)橛脩艚缑骈_發(fā)做到什么,我們從他們的項(xiàng)目頁面上引用了一個例子。
這是在使用AQuery之前的代碼:
AQuery項(xiàng)目地址:https://github.com/androidquery/androidquery
Android Query簡化了附加事件處理程序的過程。它不會構(gòu)建出接口或者匿名類,我們只需要確保它們不會把事件處理程序的方法名拼寫錯。
復(fù)制代碼 代碼如下:
aq.id(R.id.button).clicked(this, "buttonClicked");
因?yàn)槠聊淮笮『虯PI版本而造成的瑣碎問題會給設(shè)備帶來很多麻煩。Android Query通過圍繞API提供了自己的封裝,從而解決了部分問題。例如,函數(shù)“aq.hardwareAccelerated11();”會檢測設(shè)備是否支持API 11,并在合適的時候啟動硬件加速。
當(dāng)處理不同大小屏幕的時候,開發(fā)者經(jīng)常首先會創(chuàng)建tablet,然后刪除并識別控件,直到它能夠與電話的情況符合。一般這意味著,在試圖從后臺代碼操作控件之前,你需要檢查虛擬樹,以看到它們是否確實(shí)已經(jīng)從axml文件創(chuàng)建。
Android Query會根據(jù)條件來鏈接方法(conditionally chaining methods),讓你可以回避所有檢查。考慮一下這段代碼:
復(fù)制代碼 代碼如下:
aq.id(R.id.address).text(name).background(R.color.red).textColor(R.color.black).enabled(true).visible().clicked(this, "addressClicked");
如果控件地址不存在,那么后面所有設(shè)置方法和事件處理程序都會停止。盡管這可能會讓調(diào)試更困難,但是它可以極大地減少onCreate方法中的代碼行數(shù)。
AQuery還可以很容易地調(diào)用異步HTTP請求。它包含了針對簡單和多個部分POST操作的支持,并且能夠接受二進(jìn)制、JSON、HTML以及XML格式的數(shù)據(jù)。此外,它還包含了針對圖片的單獨(dú)支持,我們使用一行代碼就能下載圖片,對其進(jìn)行緩存,并把它載入到控件中。
新聞熱點(diǎn)
疑難解答
圖片精選