2013-06-02 7 views
0

J'essaie d'intégrer un graphique dans une application que je construis, mais j'ai rencontré beaucoup de difficultés quand j'ai essayé d'intégrer des éléments d'achartEngine dans des fragments.Android: achartEngine avec des fragments

J'ai trouvé ici quelques discussions sur le sujet mais personne ne m'a aidé (par exemple this et this).

Quelqu'un peut-il aider ou donner une direction?


Jackyto, Ceci est mon code en fonction de votre recommandation, mais ne fonctionne toujours pas pour moi (accident). : (

Merci beaucoup

public class LayoutOne extends Fragment { 

private GraphicalView mChart; 

private XYMultipleSeriesDataset mDataset = new XYMultipleSeriesDataset(); 

private XYMultipleSeriesRenderer mRenderer = new XYMultipleSeriesRenderer(); 

private XYSeries mCurrentSeries; 

private XYSeriesRenderer mCurrentRenderer; 

LinearLayout layout; 

private void initChart() { 
    mCurrentSeries = new XYSeries("Sample Data"); 
    mDataset.addSeries(mCurrentSeries); 
    mCurrentRenderer = new XYSeriesRenderer(); 
    mRenderer.addSeriesRenderer(mCurrentRenderer); 
} 

private void addSampleData() { 
    mCurrentSeries.add(1, 2); 
    mCurrentSeries.add(2, 3); 
    mCurrentSeries.add(3, 2); 
    mCurrentSeries.add(4, 5); 
    mCurrentSeries.add(5, 4); 
} 

public static Fragment newInstance(Context context) { 
    LayoutOne f = new LayoutOne(); 

    return f; 
} 

@Override 
public View onCreateView(LayoutInflater inflater, ViewGroup container,Bundle savedInstanceState) { 
    ViewGroup root = (ViewGroup) inflater.inflate(R.layout.layout_one, null); 
    layout = (LinearLayout) root.findViewById(R.id.chart); 
    return root; 
} 

public void onResume() { 
     super.onResume(); 
     if (mChart == null) { 
      initChart(); 
      addSampleData(); 
      mChart = ChartFactory.getCubeLineChartView(getActivity(), mDataset, mRenderer, 0.3f); 
      layout.addView(mChart); 
     } else { 
      mChart.repaint(); 
     } 
    } 

}

Bien sûr, j'étais définir - android. Id = "@ + id/graphique" dans ma mise en page

+1

Avez-vous un problème particulier ou vous ne pouvez pas voir comment faire? – Jackyto

+1

Je ferai connaissance un exemple clair pour expliquer comment le faire ou quelque chose comme ça, j'ai essayé d'en construire un moi-même, basé sur ce que j'ai trouvé en ligne mais ce n'est pas si simple. : ( Merci – user1836560

+1

Essayez ici.. Http://www.javaadvent.com/2012/12/achartengine-charting-library-for.html Alors je viens de mettre ma mise en page de graphique dans ma mise en page de Fragment et il a été fait Si vous avez des questions :) – Jackyto

Répondre

0

Mettre cela code dans onActivityCreated

initChart(); 
addSampleData(); 
mChart = ChartFactory.getCubeLineChartView(getActivity(), mDataset, mRenderer, 0.3f); 
layout.addView(mChart);`