WindowSoftInputMode и ScrollView

Основное действие моего приложения для Android выглядит так:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/RelativeLayout1"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:background="@drawable/background"
    android:orientation="vertical" >

    <ScrollView
        xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/ScrollView"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:fillViewport="true"
        android:orientation="vertical"
        android:paddingLeft="60dp"
        android:paddingTop="53dp" >

        <RelativeLayout
            xmlns:android="http://schemas.android.com/apk/res/android"
            android:id="@+id/RelativeLayout1"
            android:layout_width="fill_parent"
            android:layout_height="match_parent"
            android:orientation="vertical" >

            <TextView
                android:id="@+id/billAmountText"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:text="@string/billAmount_string"
                android:textAppearance="?android:attr/textAppearanceMedium" />

            <EditText
                android:id="@+id/billAmount"
                android:layout_width="173dp"
                android:layout_height="wrap_content"
                android:layout_below="@id/billAmountText"
                android:layout_marginTop="3dp"
                android:inputType="numberDecimal" />
        </RelativeLayout>
    </ScrollView>

</RelativeLayout>

Чтобы фоновое изображение (, определенное в первом RelativeLayout ), не сжималось при появлении клавиатуры, я установил android:windowSoftInputMode="stateVisible|adjustPanв файле манифеста для своей активности. Теперь с фоном и макетом все в порядке, размер ничего не меняется.

Но проблема в том, что мой ScrollView теперь не работает, потому что я полагаю, что система считает, что размер окна не нуждается в изменении размера из-за моей модификации манифеста -выше, поэтому ScrollView не активирован. Когда я вынимаю android:windowSoftInputMode="stateVisible|adjustPan, происходит обратное, прокрутка работает, но фон выдавливается при выдвижении клавиатуры.

Есть ли способ закодировать его так, чтобы мой фон не сжимался, а мой ScrollView все еще работал? Спасибо!

6
задан marapet 21 February 2013 в 12:17
поделиться