显示键盘时,RelativeLayout不会自动调整大小

时间:2015-07-03 18:05:51

标签: android android-layout keyboard

显示键盘时,RelativeLayout无法自动调整:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="wrap_content" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".MainActivity">

<EditText
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/editText"
    android:layout_alignParentBottom="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:imeOptions="flagNoFullscreen|flagNoExtractUi"
    android:inputType="none"
    android:minLines="1"
    android:maxLines="1" />

<ScrollView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:id="@+id/scrollView"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_above="@+id/editText" >

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceMedium"
        android:id="@+id/textView"
        android:fontFamily="Courier New" />
</ScrollView>

</RelativeLayout>

显示键盘时,元素不会自动调整大小: When keyboard is hidden

When keyboard is shown

当显示键盘时,内容超出了手机的顶部

2 个答案:

答案 0 :(得分:1)

将此属性添加到根布局(相对布局):

android:fitsSystemWindows="true"

并将android:windowSoftInputMode="adjustResize"添加到您的清单文件中的活动代码。

答案 1 :(得分:0)

android:windowSoftInputMode =&#34; adjustPan&#34; 添加到您的清单中:

  <activity android:name="MyActivity"
    ...
    android:windowSoftInputMode="adjustPan"
    ...
  </activity>