2

スクロールできない単純な xy 折れ線グラフがあります。ミリ秒ごとに更新されるグラフの上部にタイマーを表示しています。

次の関数を使用して、グラフのスクロールとクリック イベントを無効にしました。

renderer.setClickEnabled(false);
renderer.setPanEnabled(false, false);

すべて正常に動作しますが、グラフがまだタッチ イベントを消費しているように見えます。ユーザーがグラフをタッチまたはスクロールしようとすると、上部で実行されているタイマーがちらつきます。これにより、アプリが少しハングしているような印象を受けます。グラフに触れると、タイマーの滑らかさが失われました。手付かずの位置では、非常にスムーズに実行されます。これが私のレンダラー設定です。

renderer.setXLabels(0);
renderer.setYLabels(0);
renderer.setRange(new double[]{5,10,15,20,25,30});
renderer.setShowGrid(false);
renderer.setXLabelsAlign(Align.RIGHT);
renderer.setYLabelsAlign(Align.RIGHT);
renderer.setZoomButtonsVisible(false);
renderer.setClickEnabled(false);
renderer.setPanEnabled(false, false);
renderer.setBackgroundColor(Color.argb(0, 0, 0, 0));
renderer.setMarginsColor(Color.argb(0, 0, 0, 0));
renderer.setYTitle(yTitle);
renderer.setTextTypeface(null, Typeface.BOLD);
renderer.setXAxisMin(xMin);
renderer.setXAxisMax(xMax);
renderer.setYAxisMin(yMin);
renderer.setYAxisMax(yMax);
renderer.setTextTypeFace(FontManager.getInstance(context).getTypeface("HelveticaLTStd-BoldCond.otf"));
renderer.setAxesColor(Color.parseColor(context.getString(R.color.gray_for_axis_color)));
renderer.setLabelsColor(Color.parseColor(context.getString(R.color.yellow)));
renderer.setAntialiasing(true);
renderer.setShowGridY(true);
renderer.setShowLegend(false);
renderer.setMargins(new int[]{0,30,0,12});
renderer.setXLabelsColor(Color.parseColor(context.getString(R.color.yellow)));
renderer.addTextLabel(1, "");
renderer.addTextLabel(2, "10 \nMin");
renderer.addTextLabel(3, "");
renderer.addTextLabel(4, "20 \nMin");
renderer.addTextLabel(5, "");
renderer.addTextLabel(6, "30 \nMin");
renderer.addTextLabel(7, "");
renderer.addTextLabel(8, "40 \nMin");
renderer.addTextLabel(9, "");
renderer.addTextLabel(10, "50 \nMin");
renderer.addTextLabel(11, "");
renderer.addTextLabel(12, "60 \nMin");
4

1 に答える 1

1

ピンチ ズームを無効にすることもできます。

renderer.setZoomEnabled(false, false);
于 2012-07-30T15:33:13.107 に答える