Как предотвратить ScrollView, чтобы скрыть нижний колонтитул? - PullRequest
1 голос
/ 23 января 2012

На экране есть верхний и нижний колонтитулы, а центр экрана (область содержимого) занят ScrollView.Когда я запускаю приложение, отображается нижний колонтитул.Но когда я нажимаю на элемент «A», он показывает больше элементов на экране, выдвигая другие элементы ниже.ScrollView делает центральную часть прокручиваемой, но она также скрывает нижний колонтитул (серый LinearLayout в нижней части экрана).

Как сделать так, чтобы нижний колонтитул оставался в нижней части экрана?Я хочу, чтобы область содержимого прокручивалась только.XML верхнего и нижнего колонтитула находится вне элемента ScrollView.Я попытался использовать RelativeLayout для нижнего колонтитула вместо LinearLayout, но безуспешно.

Вот вид до и после нажатия на элемент «А».

Before click

After click

Я могу предоставить код, XML и Java, если это необходимо, но это в значительной степени код.

Ответы [ 3 ]

9 голосов
/ 23 января 2012
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >

    <ScrollView
        android:id="@+id/scrollView1"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_weight="1"
        android:fillViewport="true">

        <LinearLayout
            android:id="@+id/linearLayout1"
            android:layout_width="match_parent"
            android:layout_height="match_parent" >
        </LinearLayout>
    </ScrollView>

    <LinearLayout
        android:id="@+id/linearLayout2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content">

        <Button
            android:id="@+id/button1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Button" />

    </LinearLayout>

</LinearLayout>

используйте вес для макета

1 голос
/ 23 января 2012
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent" >

<Button
    android:id="@+id/header"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentTop="true"
    android:text="Header view" />

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/content"
    android:layout_below="@id/header" >

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:orientation="vertical" >

    //////////////



    </LinearLayout>
</ScrollView>

<Button
    android:id="@+id/footer"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:text="Footer View" />

0 голосов
/ 23 января 2012

Scrollviews прямой ребенок не должен иметь атрибута роста к содержанию. я думаю, что вы объявили Wrapcontent не так ли? высота вида должна быть не изменяемой высоты

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...