Android ScrollView子元素位置

Android ScrollView子元素位置,android,android-layout,scrollview,Android,Android Layout,Scrollview,我有一个滚动视图,我想滚动到一个子元素(相对视图), 我知道如何滚动到X/Y位置,但如何知道我的相对视图在滚动视图中的位置? 或者可以直接滚动到这个相对视图 <ScrollView android:layout_width="fill_parent" android:layout_height="fill_parent"> .... <RelativeLayout android:id="@+id/box"

我有一个滚动视图,我想滚动到一个子元素(相对视图), 我知道如何滚动到X/Y位置,但如何知道我的相对视图在滚动视图中的位置? 或者可以直接滚动到这个相对视图

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
....
        <RelativeLayout
            android:id="@+id/box"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >
....
</ScrollView>

....
....

我想滚动到@+id/box。可以吗?

滚动到一个特定的元素,从前面的所有元素中选择“.getHeight()”并添加topMargin,然后滚动到此位置

要获取topMargin,请执行以下操作:

MarginLayoutParams vlpBox = (MarginLayoutParams) box1.getLayoutParams();
vlpBox.topMargin
要获取真实高度(而不是包裹内容),请执行以下操作:


这是一个解决方法,我不知道是否存在更好的解决方案。

我不相信有这种方法可以按id滚动,但您可以使用ScrollTo()函数并在那里设置布局
View.getHeight()