0

ScrollView在 android 中实现了一个包含一系列自定义视图(扩展View类的类),问题是我唯一滚动的时间是android:layout_height="xxxsp"每个视图的滚动时间。问题是视图在低密度手机上的缩放比例很奇怪。我需要的是让每个视图都是 ScrollViews 视口的大小。我试图在视图中覆盖 onMeasure() (不知道我是否正确)并将其设置为父母的宽度和高度。我尝试将 layout_width 和 height 设置为 fill_parent,两次它只会显示一个视图来填充视口,但不会滚动。请帮我。

<LinearLayout 
 >

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="0dip"
    android:layout_weight="4"
    android:fillViewport="true"
     >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

        <com.xxx.xxx.ChartView
            android:layout_width="match_parent" // this alone will be shown 
            android:layout_height="match_parent"// Scrolling will be disabled

           />

        <com.xx.xx.CustomView
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:layout_marginBottom="5sp"
            android:layout_marginLeft="10sp"
            android:layout_marginRight="10sp" />
    </LinearLayout>
</ScrollView>

这是onMeasure

        protected void onMeasure(int widthMeasureSpec, int heightMeasureSpec) {
    super.onMeasure(widthMeasureSpec, heightMeasureSpec);

    int parentWidth = MeasureSpec.getSize(widthMeasureSpec);
    int parentHeight = MeasureSpec.getSize(heightMeasureSpec);
    this.setMeasuredDimension(
            parentWidth , parentHeight);
}
4

0 回答 0