1

我正在尝试使用 timertask 安排一个计时器。我想在使用 ProgressDialog 运行任务时冻结 UI。我正在使用 AsyncTask 和 TimerTask 来实现预期的结果。但是当我将进度对话框代码添加到 TimerTask Runnable 时,它​​会引发运行时异常。下面是 TimerTask 的代码,任何帮助将不胜感激。提前致谢。

公共类 MyTimerTask 扩展 TimerTask { 上下文 contxt; public MyTimerTask(Context cn){ contxt=cn;

}
public void run() { 
try { 

pd=ProgressDialog.show(contxt, "Searching For Records", "Please wait...", true, true);

 reqtype="GO";
 _getRecords=new InitTask();
 _getRecords.execute(contxt);

} catch (Exception e) { 
Log.e(">>>>>>>>>>>> Error executing MyAsyncTask: ", e.getMessage(), e); 
} 
} 
} 
4

1 回答 1

0

这可能是因为您试图在非 GUI 线程中使用 GUI 功能。查看http://developer.android.com/reference/android/app/Activity.html#runOnUiThread%28java.lang.Runnable%29以获得可能的修复。

于 2011-01-01T10:13:36.603 回答