불행히도 현재 SDK에서는 부드러운 키보드가 나타나고 사라지는 경우보기가 어떻게 작동하는지에 대해 조금은 자비를두고 있습니다. 찾고자하는 동작을 얻는 가장 좋은 방법은 창에 기본 입력 모드를 그대로두고보기에 스크롤 가능한 요소 하나가 있는지 확인하는 것입니다. 키보드가 숨겨져있는 동안 (스크롤 뷰보다 작은 내용)이 요소는 스크롤 할 필요가 없지만 키보드가 나타나면 스크롤 가능한보기의 크기를 축소하고 그 밖의 모든 것을 그대로 둡니다.
다음은 예입니다.
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
android:layout_width="fill_parent"
android:layout_height="fill_parent">
<LinearLayout
android:id="@+id/control"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_alignParentBottom="true"
android:orientation="vertical">
<EditText
android:layout_width="fill_parent"
android:layout_height="wrap_content"/>
<Button
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="A Button"/>
</LinearLayout>
<ScrollView
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:layout_above="@id/control">
</ScrollView>
</RelativeLayout>
기본적인 활동의 루트 레이아웃으로이 시도하고 안드로이드 크기를 조정하기 때문에 당신이 위 아래로 키보드가 전체 LinearLayout
슬라이드를 볼 수 있습니다 :이 당신의 고해상도/레이아웃/main.xml에있다 가정 해 봅시다 뷰를 위로 밀어내는 대신에 ScrollView
의 뷰포트를 사용하면 포커스 된 입력 요소를 볼 수 있습니다 (지금 보았습니다).
상황을 올바르게 이해했는지 확신 할 수 없지만 이미지를 루트 레이아웃 배경 리소스로 설정할 수 없으며 레이아웃의 나머지 부분이 키보드로 위아래로 이동할 수 있지만 크기 조정에 대해 걱정하지 않아도됩니까? – ANemati