5

onclicklistener を Android の achartengine1.0.0 で動作させるのに問題があります。具体的には、「.getCurrentSeriesAndPoint」(常に null) から何も返すことができません。

SeriesSelection seriesSelection = gView.getCurrentSeriesAndPoint();

したがって、次のようにチャートビューを作成するクラスがあります...

public class xyScatter extends Application {
    public GraphicalView getGView(Context context) {

         ...(STUFF)...

          mRenderer.setClickEnabled(true);
          mRenderer.setSelectableBuffer(100);

         ...(STUFF)...

          return ChartFactory.getScatterChartView(context, dataset, mRenderer);
    }
}

次に、私の活動では、次の方法があります

private void displayXY() {

   xyScatter xyScat = new xyScatter();
   final GraphicalView gView = xyScat.getGView(this);
   glayout.removeAllViews();
   glayout.addView(gView);

   gView.setOnClickListener(new View.OnClickListener() {

        @Override
        public void onClick(View v) {
            SeriesSelection seriesSelection = gView.getCurrentSeriesAndPoint();

            Log.d("seriesSelection", String.valueOf(seriesSelection));

            if (seriesSelection == null) {
                Log.d("OnClickXY", "Nothing Selected");
            } else {
                Log.d("OnClickXY", "Something Selected");
            }
        }
    });

}

これは、チャートをlinearLayout内のGraphicalViewとして追加することと関係がありますか?

いくつかのサイトを検索してみましたが、うまくいきませんでした。

4

1 に答える 1

0

誰かがこれを行うためのさらに多くの例を確認することに興味がある場合は、公式の AChartEngine デモ コード、特にあなたの質問に関連するこの例を参照することをお勧めします。

于 2012-10-13T10:18:40.150 に答える