溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點(diǎn)擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

android中更新UI的幾種方式

發(fā)布時間:2020-06-17 06:09:52 來源:網(wǎng)絡(luò) 閱讀:499 作者:許大蟲 欄目:移動開發(fā)

    Android中更新UI常見的方式有4種:runOnUIThread、handler post、handler sendMessage、view post.

    先使用handler post的方法更新UI

android中更新UI的幾種方式

    handler.post(r)方法中需要傳遞進(jìn)去一個Runnable對象,可以直接在里面新建一個Runnable對象,接著在Runnable的run方法中對UI進(jìn)行操作

進(jìn)入 handler.post(r)的源碼中

android中更新UI的幾種方式

    可以看到,其實(shí)這種方法里面也是通過發(fā)送延遲消息的方式對UI進(jìn)行操作的。

    

    下面用handler sendMessage更新UI

android中更新UI的幾種方式

android中更新UI的幾種方式

    該方法就是通過在子線程中發(fā)送消息通知主線程更改UI,這是比較常見的方式


    下面用runOnUIThread的方法

android中更新UI的幾種方式

runOnUIThread(action)需要傳遞一個Runnable對象作為參數(shù),此時可以new一個Runnable再實(shí)現(xiàn)它的run方法,在run方法里對UI進(jìn)行操作

android中更新UI的幾種方式

從源碼當(dāng)中可以看到,系統(tǒng)先會判斷該線程是否為UI線程,如果不是就通過handler去更新,是就通過UI線程的run方法更新


    下面用view post方法

android中更新UI的幾種方式

源碼

android中更新UI的幾種方式


其實(shí)這四種方法都是通過handler對UI進(jìn)行更新的,只是具體方法形式存在大同小異的區(qū)別而已


    

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI