我正在 ViewPager 中实现 achartengine。保存图表的视图有一个带有 7 个选项的微调器,您可以在其中选择要查看的数据。其中 6 个选项返回 PieChartView,最后一个选项返回 TimeChartView。
piechartView图表按预期更新和重绘,但选择TimeChartView选项时,没有任何反应。该视图与先前选择的 PieChartView 保持一致,并且不会引发错误。我已经在应用程序的其他地方成功实现了 TimeChartView,并且比较代码和提供图表的数据没有引发任何标志,所以我只能假设我切换图表类型的方法不正确。
下面的代码摘录是处理切换视图的部分;任何意见,将不胜感激。
try{
//if mChartView is already created (has data)
//we need to invalidate it because it will only accept
//data less than or equal to the length of data it currently has
if(mChartView != null){
mChartView.invalidate();
}
if(graphType >= 6){
mChartView = ChartFactory.getTimeChartView(ctx, mDataset, genericXYRenderer, "MM/dd");
genericXYRenderer.setClickEnabled(false);
}else{
mChartView = ChartFactory.getPieChartView(ctx, genericSeries, genericRenderer);
genericRenderer.setClickEnabled(false);
genericRenderer.setSelectableBuffer(10);
}
layout.addView(mChartView, new LayoutParams(
LayoutParams.FILL_PARENT, LayoutParams.FILL_PARENT));
mChartView.repaint();
} catch (Exception e) {
Log.e("[appname]", "Error trying to set ChartView", e);
m_Logger = new Logger();
m_Logger.error(e);
}
非常感谢,戴夫