真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

android圖片顯示(一)————關(guān)于并發(fā),亂序問題的處理-創(chuàng)新互聯(lián)

GridView加適配器的方式

“只有客戶發(fā)展了,才有我們的生存與發(fā)展!”這是創(chuàng)新互聯(lián)的服務(wù)宗旨!把網(wǎng)站當作互聯(lián)網(wǎng)產(chǎn)品,產(chǎn)品思維更注重全局思維、需求分析和迭代思維,在網(wǎng)站建設(shè)中就是為了建設(shè)一個不僅審美在線,而且實用性極高的網(wǎng)站。創(chuàng)新互聯(lián)對網(wǎng)站制作、成都網(wǎng)站建設(shè)、網(wǎng)站制作、網(wǎng)站開發(fā)、網(wǎng)頁設(shè)計、網(wǎng)站優(yōu)化、網(wǎng)絡(luò)推廣、探索永無止境。

如果僅僅只用gridview加適配器的方法,因為加載圖片是需要時間的,如果你直接在getview中加載圖片的話,就會影響UI,照成滑動的時候卡頓。所以,每加載一個圖片的時候,我們會開啟一個額外的進程,這樣就不會影響UI主線程了。

僅僅只是開啟一個額外的線程會出現(xiàn)“亂序”的問題。也就是“并發(fā)性”的問題。

因為,當你進行滑動的時候,凡是經(jīng)過的區(qū)域都會打開線程加載圖片,每個線程執(zhí)行完畢的時間不是固定的。只有當線程執(zhí)行完畢后,才會顯示在當前屏幕上。因此,當你大規(guī)模的滑動的時候,有些區(qū)域的圖片還沒顯示就被滑走,但是他們的線程還在,所有的線程都擠到當前屏幕顯示。所以被滑過的圖片會在相續(xù)的顯示,往往一個位置要顯示好幾張不同的圖片(因為線程加載的時差相互覆蓋),最后顯示為該屏幕本來的圖片。

這就是“并發(fā)性”的問題,并發(fā)性是指兩個或多個事件在同一時間間隔內(nèi)發(fā)生。

這樣應(yīng)該就能明白為什么會出現(xiàn)并發(fā)性問題,因為同時有多個線程再執(zhí)行,我們不能保證圖片的線程在被滑過之后就停止執(zhí)行了。

解決并發(fā)性問題,我最近嘗試的方式有兩種,一種Android doc上推薦的方法,還有一個就是看guolin大神的博客上的方法。

Android doc上推薦的方式

Android doc上推薦的方法,思路是將線程與每個位置(ImageView)綁定,在圖片沒有加載完之前先用一個站位圖片站著,若正在執(zhí)行的線程不是當前圖片所綁定的線程就取消掉,不再加載。這樣就只有被綁定的線程才能執(zhí)行,不會在一個位置上重復(fù)出現(xiàn)多張不同的圖片。

參考鏈接:

http://developer.android.com/training/displaying-bitmaps/process-bitmap.html

guolin大神的setTag方式

而guolin大神用了一個ImageView.setTag(imgeUri),為每個位置綁定一張圖片,其中p_w_picpathUri是每張圖片在本地的存儲路徑,既能保證不重復(fù),也可以用它來加載圖片。

參考鏈接:http://blog.csdn.net/guolin_blog/article/details/9526203

所以我自己試著用了setTag()寫了一下,確實能解決問題。但是,圖片出現(xiàn)的速度比guolin大神的慢了許多,比Android doc也慢了許多。想了一下,原來是因為Android doc的方法是在判斷后有取消線程的執(zhí)行。而我只是在線程執(zhí)行之后,判斷該線程所加載的圖片是否與該位置綁定。沒綁定就不顯示。這樣所有線程不管有用沒有都執(zhí)行了一遍,效率很低。而guolin大神的又不一樣,因為他重寫了OnScoll(),在滑動時,所有線程都取消,只有停下來的時候才開線程,所以,也不會有無用的線程在執(zhí)行。我覺得這樣也很不錯!

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。


網(wǎng)站題目:android圖片顯示(一)————關(guān)于并發(fā),亂序問題的處理-創(chuàng)新互聯(lián)
瀏覽路徑:http://weahome.cn/article/ieppp.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部