ScrollView com botoes fixos

Top  Previous  Next

Quando você quiser fazer uma ScrollView, querendo que algum elemento fique sempre mostrando na tela.

Neste caso mostrarei como fazer para deixar dois botões fixos na tela, logo abaixo de uma ScrollView.

O segredo está em usar um ScrollView dentro de um LinearLayout, e colocar o android:layout_weight="1" no ScrollView.

registro.xml

 

<?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" >

 

  <TextView

      android:layout_width="fill_parent"

      android:layout_height="wrap_content"

      android:gravity="center"

      android:text="Registro"

      android:textSize="30dp" />

 

  <LinearLayout

      android:layout_width="fill_parent"

      android:layout_height="wrap_content"

      android:layout_gravity="center|top"

      android:orientation="vertical" >

 

      <ScrollView

          android:layout_width="fill_parent"

          android:layout_height="wrap_content"

          android:layout_gravity="center"

          android:layout_weight="1" >

 

          <LinearLayout

              android:layout_width="fill_parent"

              android:layout_height="wrap_content"

              android:orientation="vertical" >

 

              <TextView

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:text="Matrícula" />

 

              <EditText

                  android:id="@+id/edtRegMatricula"

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:inputType="number"

                  android:padding="5dip"

                  android:text="123" />

 

              <TextView

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:text="Nome" />

 

              <EditText

                  android:id="@+id/edtRegNome"

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:inputType="textPersonName"

                  android:padding="5dip"

                  android:text="Nome" />

 

              <TextView

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:padding="3dip"

                  android:text="Email" />

 

              <EditText

                  android:id="@+id/edtRegEmail"

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:inputType="textEmailAddress"

                  android:padding="5dip"

                  android:text="blablabla@blabla.com" />

 

              <TextView

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:padding="3dip"

                  android:text="Login" />

 

              <EditText

                  android:id="@+id/edtRegLogin"

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:padding="5dip"

                  android:text="LOGIN" >

 

                  <requestFocus />

              </EditText>

 

              <TextView

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:padding="3dip"

                  android:text="Senha" />

 

              <EditText

                  android:id="@+id/edtRegSenha"

                  android:layout_width="fill_parent"

                  android:layout_height="wrap_content"

                  android:maxLength="8"

                  android:padding="5dip"

                  android:password="true"

                  android:text="1234" />

          </LinearLayout>

      </ScrollView>

 

      <LinearLayout

          android:layout_width="fill_parent"

          android:layout_height="wrap_content"

          android:layout_gravity="bottom"

          android:gravity="center"

          android:orientation="horizontal" >

 

          <Button

              android:id="@+id/btnRegCadastrar"

              android:layout_width="wrap_content"

              android:layout_height="wrap_content"

              android:text="Cadastrar" />

 

          <Button

              android:id="@+id/btnRegCancelar"

              android:layout_width="wrap_content"

              android:layout_height="wrap_content"

              android:text="Cancelar" />

      </LinearLayout>

  </LinearLayout>

 

</LinearLayout>

 

 

Tela