我建立其中I显示在带选项卡的布局的图表几个应用程序中使用androidplot库不定进度卡住(不旋转),尽管的AsyncTask
在每个I示出了片段内部的单图表标签(使用的ActionBar标签)。由于渲染速度很慢(我有一系列3000/4000值),所以我试图使用AsyncTask将图形生成放入后台线程中。
它工作正常,但我注意到如果我使用不确定的ProgressBar,指标不旋转,但它仍然是静止的,这意味着有一些进程阻止UI线程。 (我的猜测在这里)。
对于如何改进我的应用程序,您有什么建议吗?我想显示进度的负载指示,而不是仍然文本
这里是的AsyncTask代码,我在那里结束了使用“计算...”消息,而不是一个进度作为一种解决方法:
private class AsyncPlotTask extends AsyncTask<XYPlot, Void, Boolean> {
@Override
protected void onPreExecute() {
//show loading message only
loading.setVisibility(View.VISIBLE);
dataContainer.setVisibility(View.GONE);
}
@Override
protected Boolean doInBackground(XYPlot... plot) {
boolean success = true;
plot[0].addSeries(dataSeries, dataSeriesFormat);
return success;
}
@Override
protected void onPostExecute(Boolean result) {
//hide loading message and show graph
loading.setVisibility(View.GONE);
dataContainer.setVisibility(View.VISIBLE);
}
}//AsyncPlotTask
你开始在比UI线程以外的线程的AsyncTask? –