第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定

為什么handleMessage可以直接引用ImageLoader實例的成員變量而不發(fā)生錯亂?

為什么總覺得這里怪怪的,在handleMessage中直接用ImageLoader實例的成員變量mImageView和mUrl,假如要調(diào)用適配器的getView方法6次,那么就要另外開啟6個線程,每個線程都會sendMessage一次,但是誰先誰后發(fā)送message是不定的,而在先發(fā)送的message一定會先被handleMessage所處理,但是,在主線程中的handleMessage在處理message的時候會不會用用到不是與之對應(yīng)的ImageLoader實例的成員變量mImageView和mUrl呢?

正在回答

3 回答

今天又看了一下本次課程,發(fā)現(xiàn)handleMessage在處理message時處理的mImageView和mUrl確實不對應(yīng),作者用mImageView.getTag().equals(mUrl)的方式解決了該問題,但為什么出現(xiàn)這個問題并沒有說清楚,求高人指導(dǎo)!

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

xiaoc024

handleMessage在處理message時處理的mImageView和mUrl不對應(yīng)是不可避免的(同時使用ConvertView和異步機(jī)制),只有當(dāng)處理到對應(yīng)的url時才更新ui,所以加了判斷語句。
2016-05-30 回復(fù) 有任何疑惑可以回復(fù)我~

每調(diào)用一次?getView 方法就會新建一個?ImageLoader 對象,每個ImageLoader?對象內(nèi)部都有自己的成員變量mHandler,mImageView,mUrl,所以不會出現(xiàn)你說的錯亂的情況。

0 回復(fù) 有任何疑惑可以回復(fù)我~

你說的“但是誰先誰后發(fā)送message是不定的”這個我不太確定,不敢亂解釋,但是即使“用到不是與之對應(yīng)的ImageLoader實例的成員變量mImageView和mUrl”,position和imageview、url是對應(yīng)的,所以handler總會把圖像加載到這個圖片對應(yīng)的position和imageview上

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報

0/150
提交
取消
Android必學(xué)-異步加載
  • 參與學(xué)習(xí)       50617    人
  • 解答問題       326    個

了解Android中的異步加載處理方法,這是面試問的最多的知識點

進(jìn)入課程

為什么handleMessage可以直接引用ImageLoader實例的成員變量而不發(fā)生錯亂?

我要回答 關(guān)注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號