2

その中にカスタムビューが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

1 に答える 1

3

問題は、カスタム ビューで onMeasure(int, int) を適切に実装していない可能性が最も高いです。このメソッドは、ビューの大きさをシステムに伝えるために使用されます。これは、wrap_content を使用する場合に特に重要です。

于 2012-06-22T21:02:33.450 に答える