AchartEngine中禁用平移后的性能问题

时间:2012-07-30 15:18:05

标签: android android-layout android-view achartengine

我有一个简单的不可滚动的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");

1 个答案:

答案 0 :(得分:1)

您可能还想禁用缩放缩放:

renderer.setZoomEnabled(false, false);