Mueve el diseño hacia arriba cuando se muestra el teclado virtual

Estoy tratando de ajustar el diseño cuando aparece el teclado virtual después de que se enfoca un texto de edición. En este momento, si tengo muchos textos de edición y aparece el teclado, el último texto de edición está oculto y no puedo desplazarme hacia arriba.

Así es como se construye mi diseño:

Modelo:

<LinearLayout>
    <LinearLayout>
        // header 1
    </LinearLayout>
    <LinearLayout>
        // header 1
    </LinearLayout>
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="0dip"
        android:layout_weight="1"
        android:orientation="vertical">
        // where I inflate view_1
    </LinearLayout>
    <LinearLayout>
        // footer
    </LinearLayout>
</LinearLayout>

Vista (view_1):

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:focusable="true"
        android:focusableInTouchMode="true">
        <LinearLayout>
            // ...
        </LinearLayout>
        <LinearLayout>
            // ...
        </LinearLayout>
        <LinearLayout>
            <TextView/>
            <EditText/>
            <TextView/>
            <EditText/>
            <TextView/>
            <EditText/>
            <TextView/>
            <EditText/>
        </LinearLayout>
    </LinearLayout>
</ScrollView>

Ya pruebo todo tipo de combinaciones deandroid:windowSoftInputMode&nbsp;(en manifest.xml y mediante programación). Traté de establecerandroid:isScrollContainer="false"&nbsp;en la vista de desplazamiento, pero nada.

También probé estoresponder, poniendo un GlobalLayoutListener en mi vista de desplazamiento, pero onGlobalLayout no se llama cuando aparece el teclado. Y elisKeyboardShown&nbsp;siempre es falso