2012-06-22 131 views
1

我有一个ScrollView,里面有一个自定义视图。它不会滚动。我可以让它滚动,如果我把它放在一个文本视图。我寻找一个解决方案,但我找不到为什么它不会滚动。ScrollView不滚动自定义视图

我想我需要以某种方式通知滚动视图时,我的自定义视图绘制。此代码来自自定义控件上的onDraw。

canvas.drawLine(0, 0, 2000, 2000, paint); 
    canvas.drawLine(0, 200, 2000, 200, paint); 
    canvas.drawLine(0, 300, 2000, 300, paint); 
    canvas.drawLine(0, 400, 2000, 400, paint); 
    canvas.drawLine(0, 500, 2000, 500, paint); 
    canvas.drawLine(0, 600, 2000, 600, paint); 
    canvas.drawLine(0, 700, 2000, 700, paint); 
    canvas.drawLine(0, 800, 2000, 800, paint); 
    canvas.drawLine(0, 900, 2000, 900, paint); 
    canvas.drawLine(0, 1000, 2000, 1000, paint); 
    canvas.drawLine(0, 1100, 2000, 1000, paint); 

这是xml文件

<HorizontalScrollView xmlns:android="http://schemas.android.com/apk/res/android"  
android:id="@+id/button_scroll"  
android:layout_width="match_parent" 
android:layout_height="match_parent"  
android:layout_gravity="center_horizontal"  
android:fillViewport="true" > 

    <SCEWidgetWarehouseView 
     android:id="@+id/WarehouseView" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" /> 



</HorizontalScrollView> 

回答

4

问题是最有可能是你没有实现onMeasure(INT,INT)正确地把定制的视图。此方法用于告诉系统您的视图有多大。这在使用wrap_content时尤其重要。

+0

是的,就是这样。我想这简直就是这样,我失踪了。谢谢。 –

+1

如果这个答案有帮助,它应该被标记为接受。 – aMiGo