Android 如何在scrollview中设置overscroll页眉和页脚?

Android 如何在scrollview中设置overscroll页眉和页脚?,android,header,scrollview,footer,overscroll,Android,Header,Scrollview,Footer,Overscroll,我想在滚动视图中设置“Overscroll”页眉和“Overscroll”页脚。滚动视图Overscroll工作正常。但我无法在滚动视图中设置页眉和页脚。但是在滚动视图中,“overScrollHeader”和“overScrollFooter”方法不可用。我应该如何设置页眉和页脚?您不能为滚动视图设置overScrollHeader/footer。 我也遇到了同样的问题,并且不断地查找listview示例,这些示例在我的案例中无法使用。 不过我想出了一个办法。不确定这是否是最好的方法,但基本上

我想在滚动视图中设置“Overscroll”页眉和“Overscroll”页脚。滚动视图Overscroll工作正常。但我无法在滚动视图中设置页眉和页脚。但是在滚动视图中,“overScrollHeader”和“overScrollFooter”方法不可用。我应该如何设置页眉和页脚?

您不能为滚动视图设置overScrollHeader/footer。 我也遇到了同样的问题,并且不断地查找listview示例,这些示例在我的案例中无法使用。 不过我想出了一个办法。不确定这是否是最好的方法,但基本上我所做的是在scrollview的子级上设置一个负边距。实现它的最简单方法是使用布局xml,并简单地将ScrollView的子ViewGroup的marginTop设置为负数。然后将滚动视图的底部填充设置为与在子视图中设置的边距相同的量。(抱歉,有点混乱)


... 等
差不多吧

您的ChildView中最顶部的内容应该显示在overscroll区域中

但是我不想用xml来做,因为它不够灵活,我创建了一个自定义类,您可以在其中设置希望在overscroll区域中显示的任何视图

在自定义scrollview中,可以覆盖onMeasure或其他一些方法,从中可以获取标题视图的高度,并动态设置子视图的边距和scrollview的填充


因为我不需要页脚,所以我还没有尝试过,但我确信有一种方法可以使用相同类型的方法来解决它。再说一次,我不太确定这是否是最好的解决方案(尤其是使用负边距和填充有点可怕,尽管对于线性和相对布局来说应该可以),但它对我很有效,所以我想我会分享它

我想您已经使用了onOverScrolled()并根据位置决定是否是页眉和页脚。
<ScrollView
xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/ScrollView"
android:layout_height="fill_parent"
android:layout_width="fill_parent"
android:paddingBottom="-100dp">
<LinearLayout
    android:orientation="vertical"
    android:layout_marginTop="-100dp"
    android:layout_width="match_parent"
    android:layout_height="wrap_content">
... etc