确保显示操作运行在UI线程 - runOnUiThread

    技术2025-11-04  7

    一、概述

        与显示相关的操作要放到UI线程里操作。除了用Handler发送Task到UI线程显示外,还有另外一种方法runOnUiThread方式确保显示操作运行在UI线程。

    二、实例

    【代码要点】

    Handler方式new Thread(new Runnable(){ @Override public void run() { // TODO Auto-generated method stub while (progressStatus < 10) { //比如doWork在做网络下载任务的话,返回progressStatus值来更新progressBar的进度。 progressStatus = doWork(); // Update the progress bar mHandler.post(new Runnable() { public void run() { mProgress.setProgress(progressStatus); } }); } } }).start();

    runOnUiThread方式new Thread(new Runnable(){ @Override public void run() { // TODO Auto-generated method stub while (progressStatus < 10) { //比如doWork在做网络下载任务的话,返回progressStatus值来更新progressBar的进度。 progressStatus = doWork(); // Update the progress bar ProgressBarTest.this.runOnUiThread(new Runnable(){ @Override public void run() { // TODO Auto-generated method stub mProgress.setProgress(progressStatus); } }); } } }).start();

    最新回复(0)