資源描述:
《afinal框架實現(xiàn)圖片異步緩存加載(煙臺杰瑞教育android培訓(xùn)部原創(chuàng))》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、煙臺杰瑞教育科技有限公司(Android開發(fā)培訓(xùn)部)版權(quán)所有Android批量圖片加載經(jīng)典系列——afinal框架實現(xiàn)圖片的異步緩存加載一、問題描述 在之前的系列文章中,我們使用了Volley和Xutil框架實現(xiàn)圖片的緩存加載,接下來我們再介紹一下afinal框架的使用。 Afinal是一個android的http框架、sqliteorm和ioc框架。使其更加簡單易用,Afinal的宗旨是簡潔,快速。約定配置的方式之后,盡量一行代碼完成所有事情,代碼入侵性小,在三者中比較推薦。在這里我們主要使用htt
2、p框架的FinalHttp和FinalBitmap組件實現(xiàn)網(wǎng)絡(luò)圖片的加載 案例介紹——實現(xiàn)圖片新聞瀏覽:------杰瑞教育(www.jerehedu.com)專注IT技能培訓(xùn)打造一流人才服務(wù)平臺------煙臺杰瑞教育科技有限公司(Android開發(fā)培訓(xùn)部)版權(quán)所有二、案例主要組件 1、FinalHttp使用方法:FinalHttp?fh=newFinalHttp(); ?。?)發(fā)送Post方式請求fh.post(url,newAjaxCallBack(){@Overridepubl
3、icvoidonFailure(Throwablet,StringstrMsg){//請求失敗調(diào)用super.onFailure(t,strMsg);}@OverridepublicvoidonLoading(longcount,longcurrent){//請求過程中沒一秒回調(diào)一次super.onLoading(count,current);}@OverridepublicvoidonStart(){//開始異步請求時調(diào)用super.onStart();}@OverridepublicvoidonSuc
4、cess(Stringt){//請求成功調(diào)用,并接受返回結(jié)果}); (2)發(fā)送Get方式請求fh.get(url,callBack);用法同Post方式 ?。?)下載文件 方法參數(shù)分別表示下載文件的url、文件保存目標(biāo)、AjaxCallBack回調(diào)方法fh.download(url,"/mnt/sdcard/21-sun.apk",newAjaxCallBack(){@OverridepublicvoidonLoading(longcount,longcurrent){//TODOAuto
5、-generatedmethodstubtvProcess.setText("下載進度"+(current/count));}@OverridepublicvoidonSuccess(Filef){//請求成功調(diào)用,并接受返回結(jié)果tvFileName.setText(f==null?"":f.getAbsoluteFile().toString());------杰瑞教育(www.jerehedu.com)專注IT技能培訓(xùn)打造一流人才服務(wù)平臺------煙臺杰瑞教育科技有限公司(Android開發(fā)培訓(xùn)部)
6、版權(quán)所有}}); 2、向服務(wù)端傳遞參數(shù)AjaxParamsparams=newAjaxParams();//設(shè)置請求參數(shù)params.put("category","today"); 調(diào)用fh.get(url,params,ajaxCallback)或fh.post(url,params,ajaxCallback)方法傳遞數(shù)據(jù) jsp服務(wù)端 通過request.getParameter(“category”);獲得文本參數(shù) 也可上傳文件 params.put(“profile_picture”
7、,newFile(“/mnt/sdcard/head.jpg”))或 params.put(“profile_picture”,InputStream); 服務(wù)端 可使用commfileupload組件實現(xiàn)上傳 3、FinalBitmap實現(xiàn)緩存并異步加載網(wǎng)絡(luò)圖片//創(chuàng)建FinalBitmap,并設(shè)置文件緩存的位置、內(nèi)存緩存的百分比(如:系統(tǒng)內(nèi)存的1/8)FinalBitmapfb=FinalBitmap.create(this,diskCachePath,memoryCacheSizePerce
8、nt);//進行配置,可不設(shè)置fb.configLoadingImage(R.drawable.default_big);//設(shè)置圖片正在加載的時候顯示的圖片fb.configLoadfailImage(R.drawable.error_big);//設(shè)置圖片加載失敗時候顯示的圖片 配置方法還有:configBitmapMaxHeight(intbitmapHeight)//配置默認圖片的最大的高度configBitmapM