我正在使用achartengine
绘制图表,该图表将在将新值插入数据库时更新。
chart()
{
if (mChartView == null)
{
d = new BuildMultipleDataset();
db.open();
//code for some database query
LinearLayout layout = (LinearLayout) findViewById(R.id.chart);
mChartView = ChartFactory.getLineChartView(this, d.datasetbuilder(cursor1,cursor2), d.render());
layout.addView(mChartView, new LayoutParams(LayoutParams.FILL_PARENT, chartHeight));
db.close();
}
else
{
mChartView.repaint();
}
}
当从数据库触发更新时,我称为此方法。那时我使mChartView = null;但是问题在于它没有绘制更新的图表。仅当我切换屏幕方向时,更新才会反映在图表中。我的代码有什么问题?
最佳答案
我只有在删除视图,设置mChartView = null;
,定义mChartView
和设置视图时,才能使它起作用。
即
layout.removeView(mChartView);
mChartView = null;
mChartView = ChartFactory //rest of mChartView code
layout.addView(mChartView);
关于android - 与数据库集成时achartengine的问题,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/6593957/