UI操作
Android的UI操作并不是线程安全的,UI操作必须在UI线程中执行.
在非UI线程中更新UI的结果就是carsh,提示
Only the original thread that created a view hierarchy
can touch its views
runOnUiThread
Android提供了runOnUiThread接口用于更新Ui,
在需要更新Ui时,创建一个Runable对象传递给runOnUiThread
就能够安全的更新Ui
示例代码
截取部分代码:
在需要更新listview时
public void update() {
mAdapter.addPeer(listArray[i]); //增加listview内容
runOnUiThread(new Runnable() {
@Override
public void run() {
mAdapter.notifyDataSetChanged(); //Ui线程中更新listview
}
});
}