0

我有一个布局,一个顶视图、底视图和滚动视图。

滚动视图包含编辑文本。当编辑文本获得焦点时,底部视图也会滚动到 up 。如何避免这种情况。

我在清单文件 android:windowSoftInputMode 中尝试过

adjustResize

adjustPan

但仍然 btm 布局滚动,或顶部布局向上移动。

我的示例布局是

<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="match_parent"
    tools:context=".MainActivity" >

    <View
        android:id="@+id/topView"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentTop="true"
        android:background="#123456" />

    <View
        android:id="@+id/btmView"
        android:layout_width="match_parent"
        android:layout_height="50dp"
        android:layout_alignParentBottom="true"
        android:background="#123456" />

    <ScrollView
        android:layout_width="match_parent"
        android:layout_height="match_parent" >

        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:orientation="vertical" >

            <View

                android:layout_width="match_parent"
                android:layout_height="300dp"
                 />

            <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content" 
                android:layout_marginBottom="50dp"/>
        </LinearLayout>
    </ScrollView>

</RelativeLayout>

我希望顶部布局和底部布局必须是常量。如何实现这一点?

4

1 回答 1

0

利用

   android:layout_below="@+id/topView"
   android:layout_above="@+id/btmView"

在 ScrollView 像这样

 <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="match_parent"
        tools:context=".MainActivity" >

        <View
            android:id="@+id/topView"
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_alignParentTop="true"
            android:background="#123456" />

        <View
            android:id="@+id/btmView"
            android:layout_width="match_parent"
            android:layout_height="50dp"
            android:layout_alignParentBottom="true"
            android:background="#123456" />

        <ScrollView
            android:layout_width="match_parent"
            android:layout_height="match_parent" 
             android:layout_below="@+id/topView"
            android:layout_above="@+id/btmView"
           >

            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:orientation="vertical" >

                <View

                    android:layout_width="match_parent"
                    android:layout_height="1000dp"
                     />

                <EditText
                    android:layout_width="match_parent"
                    android:layout_height="wrap_content" 
                    android:layout_marginBottom="50dp"/>
            </LinearLayout>
        </ScrollView>

    </RelativeLayout>
于 2013-08-19T13:12:47.523 回答