2012-04-25 35 views
0

我有一个thrad调用一个函数来填充活动中的列表,我会在函数运行时放置一个progressDialog,我不知道我在做什么来更改进度对话框被称为,如下当前代码:在线程中插入progressDialog

new Thread(){    
     public void run() { 

       runOnUiThread(new Runnable() {  
        @Override 
        public void run() { 
         loadList(); 
        } 
       }); 
      } 
     }.start(); 
+0

请注意,使用此代码示例实际上是在UI线程上发生列表加载。因此,这段代码什么都不做,因为只要线程启动(可能来自UI线程),执行就会直接回传给UI线程。 相反,您应该在新创建的线程上加载相关数据,然后在UI线程上更新视图*。 – user634618 2012-04-25 23:38:57

回答

1

我认为你会更好使用AsyncTask,很容易附加进度对话框到这个。

下面是一个例子:http://droidapp.co.uk/?p=177

+0

+1:为后台作业使用Asynctask,因为您可以使用onPreExecute(),onPostExecute()和onProgressUpdate()回调来更新UI线程上的UI。 – Devunwired 2012-04-25 21:19:09

+0

例如,我可以让progressdialog在屏幕上停留3秒钟? – user1265628 2012-04-26 03:07:54

0

创建并启动你的进步在UI线程对话框,然后启动主题。创建一个消散()你的进度的Runnable对象。在完成使用runOnUiThread填充列表时调用此Runnable。

相关问题