Android線程中Handle的使用講解
Android UI線程是不安全的,子線程中進行UI操作,可能會導致程序的崩潰,解決辦法:創(chuàng)建一個Message對象,然后借助Handler發(fā)送出去,之后在Handler的handleMessage()
方法中獲得剛才發(fā)送的Message對象,然后在這里進行UI操作就不會再出現(xiàn)崩潰了
定義類繼承Handler
public class BallHandler extends Handler{ ImageView imageview; Bitmap bitmap; public BallHandler(ImageView imageview,Bitmap bitmap){ super(); this.imageview=imageview; this.bitmap=bitmap; } public void handleMessage(Message msg){ bitmap =(Bitmap)msg.obj; imageview.setImageBitmap(bitmap); }
在線程中,創(chuàng)建Message對象,向Handle發(fā)送消息
Message msg = new Message(); msg.obj = bitmap; handler.sendMessage(msg);
在線程中創(chuàng)建Handler對象,再啟動線程
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學習或者工作具有一定的參考學習價值,謝謝大家對腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請查看下面相關(guān)鏈接
- Android開發(fā)經(jīng)驗談:并發(fā)編程(線程與線程池)(推薦)
- Android之線程池ThreadPoolExecutor的簡介
- Android子線程與更新UI問題的深入講解
- Android線程池控制并發(fā)數(shù)多線程下載
- Android 使用AsyncTask實現(xiàn)多線程斷點續(xù)傳
- Android 使用AsyncTask實現(xiàn)多任務(wù)多線程斷點續(xù)傳下載
- 完全解析Android多線程中線程池ThreadPool的原理和使用
- 淺談Android中多線程切換的幾種方法
- Android開啟新線程播放背景音樂
- Android如何調(diào)整線程調(diào)用棧大小
相關(guān)文章
Android 監(jiān)聽網(wǎng)絡(luò)狀態(tài)方法詳解
這篇文章主要介紹了Android 監(jiān)聽網(wǎng)絡(luò)狀態(tài)方法詳解的相關(guān)資料,需要的朋友可以參考下2017-07-07Android ListView用EditText實現(xiàn)搜索功能效果
本篇文章主要介紹了Android ListView用EditText實現(xiàn)搜索功能效果,具有一定的參考價值,感興趣的小伙伴們可以參考一下。2017-03-03Android 開發(fā)使用PopupWindow實現(xiàn)彈出警告框的復用類示例
這篇文章主要介紹了Android 開發(fā)使用PopupWindow實現(xiàn)彈出警告框的復用類,結(jié)合實例形式分析了Android基于PopupWindow彈出警告框的復用類具體布局與功能實現(xiàn)技巧,需要的朋友可以參考下2020-05-05Android編程判斷網(wǎng)絡(luò)是否可用及調(diào)用系統(tǒng)設(shè)置項的方法
這篇文章主要介紹了Android編程判斷網(wǎng)絡(luò)是否可用及調(diào)用系統(tǒng)設(shè)置項的方法,涉及Android針對網(wǎng)絡(luò)連接的判定及屬性設(shè)置的調(diào)用,需要的朋友可以參考下2016-03-03