ScrollView底部的空白区域

时间:2015-03-07 17:10:40

标签: android gridview scrollview

我在ScrollView上遇到问题,底部留下了空白区域。它充满了几个TextViews和GridViews,应该填充整个RelativeLayout父级。

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    tools:context=".showPictures">
    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent">
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical">
            <TextView.../>
            <GridView.../>
        ...
        </LinearLayout>
    </ScrollView>
</RelativeLayout>

有人知道出了什么问题吗?

4 个答案:

答案 0 :(得分:4)

让您的相对布局高度与父级匹配,也可以使用android:fillViewPort =&#34; true&#34;在滚动视图中

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".showPictures">
    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:fillViewport="true">

//...

答案 1 :(得分:2)

您可以使用此代码来避免滚动视图底部的额外填充:

android:overScrollMode="never"

答案 2 :(得分:0)

为滚动视图中的每个孩子赋予权重,包括值为1的线性布局

答案 3 :(得分:0)

就我而言,我在ScrollView中有一个GridView导致了此问题。事实证明GridLayout中的layout_gravity是“中心”引起的。

无论如何,'center_horizo​​ntal'对于ScrollView来说更有意义,但是我完成原始布局(使用'center')后添加了ScrollView,当时我发现某些设备上的元素不在屏幕上,因此出现了问题

<ScrollView
    android:layout_width="match_parent"
    android:layout_height="wrap_content" >

    <GridLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_gravity="center_horizontal"  // having this as android:layout_gravity="center" causes extra space at bottom!
        android:columnCount="2">

        ....