проблема с achartengine при интеграции с базой данных - PullRequest
1 голос
/ 06 июля 2011

Я использую 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; Но проблема в том, что он не рисует обновленный график. Обновление отражается на графике только тогда, когда я переключаю ориентацию экрана. что не так с моим кодом?

1 Ответ

2 голосов
/ 15 августа 2011

Я смог заставить это работать, только когда удалил View, установил mChartView = null;, определил mChartView и установил View.

т.е.

layout.removeView(mChartView);
mChartView = null;
mChartView = ChartFactory //rest of mChartView code
layout.addView(mChartView);
...