I need to squeeze my layout when you open the keyboard

1

I'm using a TableLayout that contains EditText , and when the focus is on EditText the keyboard opens and stays in front of important information, I'd like to be able to squeeze the layout when I open the keyboard. For my entire layout (which used to occupy the entire screen) is made visible with the keyboard open. Is this possible?

Can anyone give me some tips or show a literature / tutorial?

<LinearLayout 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"
    android:background="#000000"
    android:orientation="vertical"
    tools:context="com.example.app.MainActivity" >

    <TableLayout
        android:layout_width="match_parent"
        android:layout_height="0dp"
        android:layout_weight="1"
        android:weightSum="4" >

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="40dp"
            android:weightSum="1" >

            <EditText
                android:id="@+id/etdescricao"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#000000" >

            <EditText
                android:id="@+id/etl5"
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:weightSum="5" >

            <EditText
                android:id="@+id/et1"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/etl1"
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et2"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/etl2"
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et3"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/etl3"
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et4"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/etl4"
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et5"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#000000" >

            <EditText
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:weightSum="5" >

            <EditText
                android:id="@+id/et6"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et7"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et8"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et9"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et10"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#000000" >

            <EditText
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:weightSum="5" >

            <EditText
                android:id="@+id/et11"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et12"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et13"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et14"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />

            <EditText
                android:id="@+id/et15"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#ffffff"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="1dp"
            android:layout_height="match_parent"
            android:background="#000000" >

            <EditText
                android:layout_width="match_parent"
                android:layout_height="1dp"
                android:background="#000000"
                android:maxLength="100"
                android:maxLines="2" />
        </TableRow>

        <TableRow
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:weightSum="5" >

            <Button
                android:id="@+id/btSalvar"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/btn_selector"
                android:text="Salvar"
                android:textColor="#ffffff"
                android:textSize="30sp" />

            <Button
                android:id="@+id/BtPrevious2"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/btn_selector"
                android:text="@string/previous"
                android:textColor="#ffffff"
                android:textSize="30sp" />

            <Button
                android:id="@+id/tvp2"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#000000"
                android:singleLine="true"
                android:textColor="#ff0000"
                android:textSize="75sp" />

            <Button
                android:id="@+id/btNext2"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="@drawable/btn_selector"
                android:text="@string/Next"
                android:textColor="#ffffff"
                android:textSize="30sp" />

            <ImageButton
                android:id="@+id/imageButton1"
                android:layout_width="0dp"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:background="#000000"
                android:src="@drawable/logostar" />
            <!-- android:background="#000000" -->

        </TableRow>
    </TableLayout>
</LinearLayout>
    
asked by anonymous 22.10.2014 / 19:04

2 answers

2

What you can do is put your layout inside a ScrollView and when the keyboard opens, the user can scroll the layout to see the information you want.

It would look like this:

<ScrollView 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="com.example.app.MainActivity" >

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:background="#000000"
        android:orientation="vertical" >

        <TableLayout
            android:layout_width="match_parent"
            android:layout_height="0dp"
            android:layout_weight="1"
            android:weightSum="4" >

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="40dp"
                android:weightSum="1" >

                <EditText
                    android:id="@+id/etdescricao"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000" >

                <EditText
                    android:id="@+id/etl5"
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:weightSum="5" >

                <EditText
                    android:id="@+id/et1"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/etl1"
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et2"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/etl2"
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et3"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/etl3"
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et4"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/etl4"
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et5"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000" >

                <EditText
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:weightSum="5" >

                <EditText
                    android:id="@+id/et6"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et7"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et8"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et9"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et10"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000" >

                <EditText
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:weightSum="5" >

                <EditText
                    android:id="@+id/et11"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et12"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et13"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et14"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:layout_width="1dp"
                    android:layout_height="match_parent"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />

                <EditText
                    android:id="@+id/et15"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#ffffff"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="1dp"
                android:layout_height="match_parent"
                android:background="#000000" >

                <EditText
                    android:layout_width="match_parent"
                    android:layout_height="1dp"
                    android:background="#000000"
                    android:maxLength="100"
                    android:maxLines="2" />
            </TableRow>

            <TableRow
                android:layout_width="match_parent"
                android:layout_height="0dp"
                android:layout_weight="1"
                android:weightSum="5" >

                <Button
                    android:id="@+id/btSalvar"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="@drawable/btn_selector"
                    android:text="Salvar"
                    android:textColor="#ffffff"
                    android:textSize="30sp" />

                <Button
                    android:id="@+id/BtPrevious2"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="@drawable/btn_selector"
                    android:text="@string/previous"
                    android:textColor="#ffffff"
                    android:textSize="30sp" />

                <Button
                    android:id="@+id/tvp2"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#000000"
                    android:singleLine="true"
                    android:textColor="#ff0000"
                    android:textSize="75sp" />

                <Button
                    android:id="@+id/btNext2"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="@drawable/btn_selector"
                    android:text="@string/Next"
                    android:textColor="#ffffff"
                    android:textSize="30sp" />

                <ImageButton
                    android:id="@+id/imageButton1"
                    android:layout_width="0dp"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:background="#000000"
                    android:src="@drawable/logostar" />
                <!-- android:background="#000000" -->

            </TableRow>
        </TableLayout>
    </LinearLayout>

</ScrollView>
    
23.10.2014 / 15:09
0

An attribute that would work for your case is android:layout_alignParentBottom="true" , which it does, is to always align the view with the keyboard (when it arises).

But you need to be using RelativeLayout .

Want more information and examples?

Link

    
22.10.2014 / 20:44