2013-03-29 41 views
1

我有一個列表,其中的值每15秒更新一次,我想重畫條形圖但困惑在哪裏調用,這裏是我的代碼請幫助我這樣做。如何在AchartEngine條形圖中使用重繪Android

public GraphicalView createIntentAll() { 
    String[] titles = new String[] { "Amount"}; 
    double[] d= new double[a2.size()] ; 
    for(int i=0;i<a2.size();i++){ 
    d[i] = a2.get(i); 
    } 

    List<double[]> values = new ArrayList<double[]>(); 
    values.add(d); 
     System.out.println("=========="+values.get(0)); 
     int[] colors = new int[] { Color.parseColor("#77c4d3")}; 
     XYMultipleSeriesRenderer renderer = buildBarRenderer(colors); 
     renderer.setOrientation(Orientation.HORIZONTAL); 
     setChartSettings(renderer, "Monthly Details", "Months", "Earnings", 0.5, 
       12.5, 0, yaxis, Color.BLACK, Color.BLACK); 
     renderer.setXLabels(1); 
     renderer.setYLabels(10); 

     for(int i =0;i<y2.size();i++){ 
      renderer.addXTextLabel(i+1, y2.get(i)); 
      System.out.println("==y2==="+y2.get(i)); 
     } 
     int length = renderer.getSeriesRendererCount(); 
     for (int i = 0; i < length; i++) { 
      SimpleSeriesRenderer seriesRenderer = renderer.getSeriesRendererAt(i); 
      seriesRenderer.setDisplayChartValues(true); 
     } 
gv = ChartFactory.getBarChartView(getActivity(), buildBarDataset(titles, values), renderer,Type.DEFAULT); 
LinearLayout chartContainer = (LinearLayout)view.findViewById(
     R.id.chart_container); 


chartContainer.addView(gv); 
gv.repaint(); 
     return null; 
} 

感謝所有幫助

回答

1

每當您修改數據集的內容,必須以具有圖中可以更新的呼叫gv.repaint()

+0

感謝您的回答。 – user2199280

+0

不客氣。 –

+0

我面臨同樣的問題..你添加了gv.rePaint();? – sarath