Проблема макета Android при использовании программной клавиатуры - PullRequest
0 голосов
/ 17 августа 2011

Вот упрощенная версия макета, который я использую:

<?xml version="1.0" encoding="utf-8"?>

   <ScrollView
            android:id="@+id/scroll_view" android:layout_width="wrap_content" android:layout_height="wrap_content" android:scrollbarStyle="insideOverlay" android:scrollbars="horizontal|vertical"
            android:fadingEdgeLength="5dp" android:fadingEdge="horizontal|vertical" android:isScrollContainer="true">

       <AbsoluteLayout android:layout_width="1000dp" android:layout_height="1000dp" android:background="#ff3344">

           <EditText android:text="test" android:layout_x="50dp" android:layout_y="800dp" android:layout_height="wrap_content" android:layout_width="wrap_content"></EditText>

       </AbsoluteLayout>

   </ScrollView>

   <TextView android:layout_width="fill_parent" android:layout_height="wrap_content" android:layout_gravity="top"
             android:gravity="center" android:visibility="visible" android:text="Text View" android:textColor="#FFFFFF"/>

</FrameLayout>

Проблема заключается в том, что при нажатии EditText и показе клавиатуры отображаетсяTextView выталкивается вверх из экрана.Я бы хотел, чтобы TextView оставался на месте, а ScrollView для панорамирования или изменения размера.Я пробовал настроить AdjustPan и AdjustResize на активность (либо будет хорошо для пользовательского интерфейса).AdjustResize работает правильно на моем устройстве Gingerbread, но не на моем устройстве Froyo.AdjustPan не работает ни на одном из них.

1 Ответ

0 голосов
/ 17 августа 2011

Я предлагаю вам изменить макет корня на RelativeLayout и зафиксировать TextView в нижней части.Затем позвольте ScrollView развернуться сверху до TextView.

...