Компоненты за пределом экрана в Android

Внутри RelativeLayout есть ScrollView, в котором расположен еще один RelativeLayout:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:background="#FFFFFF"
    android:orientation="vertical"
    android:padding="14dp" >

    <ScrollView
        android:id="@+id/scroll"
        android:layout_width="fill_parent"
        android:layout_height="fill_parent"
        android:layout_above="@+id/feedback_send"
        android:fillViewport="true" >

        <RelativeLayout
            android:id="@+id/container"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <EditText
                android:id="@+id/feedback_name"
                android:layout_width="fill_parent"
                android:layout_height="48dp"
                android:layout_alignParentTop="true"
                android:ems="10"
                android:hint="Name"
                android:inputType="textPersonName"
                android:maxHeight="48dp"
                android:textColor="#000000"
                android:textSize="14sp" />

            <EditText
                android:id="@+id/feedback_email"
                android:layout_width="fill_parent"
                android:layout_height="48dp"
                android:layout_below="@id/feedback_name"
                android:ems="10"
                android:hint="Your email (optional)"
                android:inputType="textEmailAddress"
                android:maxHeight="48dp"
                android:textColor="#000000"
                android:textSize="14sp" />


            <Spinner
                android:id="@+id/feedback_concern"
                android:layout_width="fill_parent"
                android:layout_height="48dp"
                android:layout_below="@id/feedback_email"
                android:minHeight="48dp" />

            <EditText
                android:id="@+id/feedback_message"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:layout_below="@id/feedback_concern"
                android:ems="10"
                android:gravity="top"
                android:hint="Message"
                android:inputType="textMultiLine"
                android:minHeight="70dp"
                android:textColor="#000000"
                android:textSize="14sp" />
        </RelativeLayout>
    </ScrollView>


</RelativeLayout>

Вопрос: как внутри ScrollView добавить компоненты, которые будут ниже остальных, но не будут видны изначально, а станут видны только после скролла вниз?


Ответы (1 шт):

Автор решения: Сергей Бувака

Как мне кажется вам если вам необходимо добавлять элементы просто ниже программно, то вам проще в ваш ScrollView вложить LinearLayout и в него просто класть элементы по очереди. Они будут добавляться в конец списка.

Если же по каким-то причинам вам необходим RelativeLayout то вам придется на каждой новой View добавлять параметры размещения новых View, это намного усложнит задачу.

→ Ссылка