web-dev-qa-db-fra.com

Comment faire la disposition linéaire en scrollview pour remplir toute la zone

<RelativeLayout xmlns:Android="http://schemas.Android.com/apk/res/Android"
    Android:layout_width="match_parent"
    Android:layout_height="match_parent"
    Android:orientation="vertical" >

    <ScrollView
        Android:id="@+id/scrollView1"
        Android:background="#000000"
        Android:layout_width="match_parent"
        Android:layout_height="match_parent" >

        <LinearLayout
            Android:id="@+id/linear1"
            Android:background="#FF0000"
            Android:orientation="vertical"
            Android:layout_width="match_parent"
            Android:layout_height="match_parent" >

            <LinearLayout
                Android:background="#00FF00"
                Android:id="@+id/linear2"
                Android:layout_width="match_parent"
                Android:layout_height="200dip"
                Android:orientation="vertical" >
            </LinearLayout>

            <LinearLayout
                Android:background="#0000FF"
                Android:id="@+id/linear3"
                Android:layout_width="match_parent"
                Android:layout_height="100dip"
                Android:orientation="vertical" >
            </LinearLayout>

        </LinearLayout>
    </ScrollView>
</RelativeLayout>

Ceci est ma mise en page et je m'attendais à voir un fond rouge (parce que linear1 a un arrière-plan rouge et a des propriétés pour remplir le parent), et deux autres mise en page avec sur le linear1 avec des bacgroudns verts et bleus

mais ce que je vois en fait, c'est le fond noir de la scrollview et le vert et le bleu de linear2 et linear3 mais pas de backgrund rouge de linear1

à savoir que le linéaire agit comme Android: layout_height = "wrap_content" n'est pas défini sur Android: layout_height = "match_parent"

des idées ?

24
Lukap

Vous devez définir fillViewport:

<ScrollView
    Android:id="@+id/scrollView1"
    Android:background="#000000"
    Android:layout_width="match_parent"
    Android:fillViewport="true" <!-- here -->
    Android:layout_height="match_parent" >

    ...

 </ScrollView>

informations

74
neworld