android 在線程中run()中添加修改UI,setText出錯


 

button.setOnClickListener(new OnClickListener() {

@Override
public void onClick(View v) {
((Button) v).setEnabled(false); // 設置按鈕不可用
// 創建一個用於播放背景音樂的線程
thread = new Thread(new Runnable() {

@Override
public void run() {
playBGSound(); // 播放背景音樂
t1.setText("1");
}
});
thread.start(); // 開啟線程
}
});
}



就是這樣。。。setText總是出錯,,,求解這個值怎么傳,

4 个解决方案

#1


更新UI要在主線程更新。

#2


子線程中不能更新ui控件,除了進度條,要更新就使用handler發送消息到主線程更新

#3


同意樓上。。

#4


ui更新不能放到自線程,最好可以用handler處理。

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
粤ICP备14056181号  © 2014-2021 ITdaan.com