我有一个ScrollView,里面有一个自定义视图。它不会滚动。如果我在其中放入textview,我可以滚动它。我找了一个解决方案,但我找不到为什么它不会滚动。
我假设我需要在我的自定义视图绘制时以某种方式通知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>
答案 0 :(得分:3)
问题很可能是您没有在自定义视图中正确实现onMeasure(int,int)。此方法用于告诉系统您的视图有多大。这在使用wrap_content时尤其重要。