如何在android中扩展片段和活动类

如何在android中扩展片段和活动类,android,Android,当我扩展Fragment和Activity时,在创建graphview 我使用rootview访问findviewbyd 但是我在创建GraphView时出错了 public class M_oneFragment extends Fragment{ public M_oneFragment(){} @Override public View onCreateView(LayoutInflater inflater, ViewGroup container,

当我扩展
Fragment
Activity
时,在创建
graphview

我使用rootview访问
findviewbyd

但是我在创建GraphView时出错了

public class M_oneFragment extends Fragment{

public M_oneFragment(){}

    @Override
    public View onCreateView(LayoutInflater inflater, ViewGroup container,
            Bundle savedInstanceState) {

        View rootView = inflater.inflate(R.layout.graph_main, container, false);

        return rootView;

     // first init data
     // sin curve
     int num = 150;
     GraphViewData[] data = new GraphViewData[num];
     double v=0;
     for (int i=0; i<num; i++) {
       v += 0.2;
       data[i] = new GraphViewData(i, Math.sin(v));
     }
     GraphViewSeries seriesSin = new GraphViewSeries("Sinus curve", new GraphViewSeriesStyle(Color.rgb(200, 50, 00), 3), data);

     // cos curve
     data = new GraphViewData[num];
     v=0;
     for (int i=0; i<num; i++) {
       v += 0.2;
       data[i] = new GraphViewData(i, Math.cos(v));
     }
     GraphViewSeries seriesCos = new GraphViewSeries("Cosinus curve", new GraphViewSeriesStyle(Color.rgb(90, 250, 00), 3), data);

     // random curve
     num = 1000;
     data = new GraphViewData[num];
     v=0;
     for (int i=0; i<num; i++) {
       v += 0.2;
       data[i] = new GraphViewData(i, Math.sin(Math.random()*v));
     }
     GraphViewSeries seriesRnd = new GraphViewSeries("Random curve", null, data);

  // create graph

     GraphView graphView = new LineGraphView(
         this
         , "GraphView"
     );

     // add data
     graphView.addSeries(seriesCos);
     graphView.addSeries(seriesSin);
     graphView.addSeries(seriesRnd);
     // optional - set view port, start=2, size=10
     graphView.setViewPort(2, 10);
     graphView.setScalable(true);
     // optional - legend
     graphView.setShowLegend(true);

    LinearLayout layout = (LinearLayout)rootView.findViewById(R.id.layout);
     layout.addView(graphView);


    }

}

帮助我

您需要将上下文传递给LineGraphView的构造函数,因此请使用getActivity()来代替它。

似乎您正在使用某个动画引擎plz引用某个动画引擎演示代码如何将位置移动到图中的中心点
GraphView graphView = new LineGraphView(
         this
         , "GraphView"
     );