課程
/移動開發
/Android
/Android必學-異步加載
為什么老師設置getTag在postExecute里?post里的操作只是貼圖,應該在doinbackground里或之前設置的
2016-03-20
源自:Android必學-異步加載 3-3
正在回答
sorry,原來下節就講到流量的問題了。。。
可能我跳著看沒看清老師寫的,這是我自己寫的,可以用
? ? ? ? protected?Bitmap?doInBackground(String...?params)?{
????????????//?TODO?Auto-generated?method?stub
????????????String?url?=?params[0];
????????????Bitmap?bitmap?=?null;
????????????if(imageview.getTag()!=?null){
????????????????bitmap?=?(Bitmap)?imageview.getTag();
????????????}
????????????else{
????????????try?{
????????????????bitmap?=?BitmapFactory.decodeStream(new?URL(url).openStream());
????????????????imageview.setTag(bitmap);
????????????}?catch?(Exception?e)?{
????????????????e.printStackTrace();
????????????}?}
????????????return?bitmap;
????????}
就是在doinbackround中,當第一次getTag為null時就下載圖片然后把bitmap設置為TAG,下次getTag不為null時就取出tag并返回這個tag
舉報
了解Android中的異步加載處理方法,這是面試問的最多的知識點
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-03-20
sorry,原來下節就講到流量的問題了。。。
2016-03-20
可能我跳著看沒看清老師寫的,這是我自己寫的,可以用
? ? ? ? protected?Bitmap?doInBackground(String...?params)?{
????????????//?TODO?Auto-generated?method?stub
????????????String?url?=?params[0];
????????????Bitmap?bitmap?=?null;
????????????if(imageview.getTag()!=?null){
????????????????bitmap?=?(Bitmap)?imageview.getTag();
????????????}
????????????else{
????????????try?{
????????????????bitmap?=?BitmapFactory.decodeStream(new?URL(url).openStream());
????????????????imageview.setTag(bitmap);
????????????}?catch?(Exception?e)?{
????????????????e.printStackTrace();
????????????}?}
????????????return?bitmap;
????????}
就是在doinbackround中,當第一次getTag為null時就下載圖片然后把bitmap設置為TAG,下次getTag不為null時就取出tag并返回這個tag