0

所以,我正在制作一个图表。计算 x 和 y 正在完成宽度从 0 到 5000 的 for 循环。加载需要很长时间,所以我想在计算数字时放入它自己的线程和 maby 绘图,而不是绘制何时一切都完成了吗?

我必须归档,Graph.java 接受一个方程并将其发送到 GraphDrawer.java 进行绘图。

图表:http : //pastebin.com/tBvr1d03图表:http: //pastebin.com/8ZwUS75u

4

2 回答 2

0

继续阅读AsyncTask,它可以满足您的需求。

在 中运行您的计算doInBackground(),调用以publishProgress()将您的更新发送到 UI 线程,并实施onProgressUpdate()以接收这些更新并绘制它们。

于 2012-11-21T20:24:06.987 回答
0

是的,通常建议在自己的线程中执行慢速操作。主线程被长时间阻塞(很多秒)既不利于用户体验,也可能导致 Android 判定进程遇到问题并提供强制关闭。

但是,您可以/绝对不应该使用在非 UI 线程中生成的图形持续更新 UI,因为从多个线程操作 UI 可能会产生未定义的结果。有关更多信息,请参见此处,特别是在“工作线程”下。

于 2012-11-21T20:29:32.587 回答