Android:如何获得scrollview全高?

时间:2014-08-14 12:42:17

标签: android scrollview

如何找到该滚动视图的总Y或高度?在该scrollview中有一个带有Long文本的简单TextView。

这是我的代码:

<ScrollView
            android:id="@+id/scroll_data"
            android:layout_width="fill_parent"
            android:layout_height="fill_parent"
            android:background="@color/White" >

            <TextView
                android:id="@+id/text_view"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:gravity="center_vertical"
                android:paddingLeft="10dp"
                android:paddingRight="10dp"
                android:text="@string/scroll_text"
                android:textAlignment="center"
                android:textColor="@color/Black"
                android:textSize="30dp"
                android:textStyle="bold" />
        </ScrollView>

我尝试了什么:

Log.e("ScrollView.FOCUS_DOWN", scrollData.FOCUS_DOWN + ""); ---> Return 120
Log.e("scrollData.getBottom()", scrollData.getBottom() + "");---> Return 0
Log.e("scrollData", scrollData.getMeasuredHeight() + "");---> Return 0

1 个答案:

答案 0 :(得分:2)

您可以通过测量孩子的身高来获得ScrollView的身高。您可以使用ViewTreeObserver

完成此操作
ViewTreeObserver viewTreeObs = view.getViewTreeObserver(); 
viewTreeObs.addOnGlobalLayoutListener(new OnGlobalLayoutListener() { 
    @Override 
    public void onGlobalLayout() { 
        this.view.getViewTreeObserver().removeGlobalOnLayoutListener(this); 
        int width  = layout.getMeasuredWidth();
        int height = layout.getMeasuredHeight(); 

    } 
});