2013-04-09 35 views
1

我的应用程序在一个ViewPager有几个Fragment秒。一个片段包含一个ChartView,并且当用户刷到移动到相邻的片段的图表被重绘和挤压而不是在原始宽度停留正如所预期的。这也是垂直发生在ScrollView内部。ChartView被挤压/变形ViewPager /滚动型

下面是片段与片段截图时,它的刷卡。

ChartViewFrameLayout内如果有什么差别。所述FrameLayout的宽度被设定为fill_parent。该FrameLayout实际上是子类,并ChartView的编程方式添加,就像这样:

public FrameLayoutSubclass(Context context, AttributeSet attributeSet) 
{ 
    super(context, attributeSet); 

    ... 

    chartView = new GraphicalView(context, chart); 
    addView(chartView); 
} 

我如何能保持在图表它的原始尺寸,因为它在和淡出视野获取滚动任何想法?

原始图表:

Original chart

压缩图:

Squeezed chart

编辑:丹的答案的伎俩:renderer.setInScroll(true);

+0

很好的截图。什么是应用程序的名称? – 2013-04-09 19:32:26

+0

谢谢丹!该应用程序是Awnry News&Weather(id = com.awnry.android.nawnry)。字体是Ubuntu,不是应用程序的一部分。 :)它只是美国的,但我很快就会扩展到国际。 – 2013-04-09 19:55:53

回答

3

一些想法,值得尝试:

  • 设置渲染器时调用renderer.setInScroll(true);
  • 呼叫chartView.repaint();的UI之后重新绘制的其他组件。
+0

D'oh!下次我应该深入挖掘。 'renderer.setInScroll(true)'做了诀窍。谢谢! – 2013-04-09 19:54:37

+0

不客气。 – 2013-04-09 20:02:01