3

我想在滚动视图中设置“Overscroll”页眉和“Overscroll”页脚。ScrollView Overscroll 工作正常。但我无法在滚动视图中设置页眉和页脚。但是在滚动视图中“overScrollHeader”和“overScrollFooter”方法不可用。我应该怎么做才能设置页眉和页脚?

4

1 回答 1

0

您不能为 scrollView 设置 overScrollHeader/Footer。我遇到了同样的问题,并且一直在寻找我无法在我的情况下使用的列表视图示例。不过我想出了一个办法。不确定它是否是最好的方法,但基本上我正在做的是在滚动视图的子节点上设置负边距。实现它的最简单方法是使用布局 xml,并将 ScrollView 的 Child ViewGroup 的 marginTop 设置为某个负数。然后将滚动视图的底部填充设置为与子视图中设置的边距相同的量。(抱歉有点混乱)

<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

类似的东西。

最顶部的 ChildView 中的任何内容都应显示在过度滚动区域中。

但是我不想在 xml 中这样做,因为它对我来说不够灵活,我创建了一个自定义类,您可以在其中设置您希望在过度滚动区域中显示的任何视图。

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

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

于 2014-10-24T04:14:25.947 回答