Android Scrollview自动延伸线性布局的高度

Android Scrollview自动延伸线性布局的高度,android,android-layout,Android,Android Layout,我对线性布局的高度有问题。当我只使用线性布局时,我的表单会缩放到屏幕大小,一切看起来都很好。但现在,我只需要在单击编辑文本并显示键盘时使用scrollview。我将scrollview设置为布局的根目录,但它扩展了此布局的高度。Scrollview应该只在键盘出现时工作,但现在它每次都工作,并破坏了我的线性布局。所以现在,当我使用scrollview时,布局比屏幕大。我该怎么办 <ScrollView android:layout_width="match_parent"

我对线性布局的高度有问题。当我只使用线性布局时,我的表单会缩放到屏幕大小,一切看起来都很好。但现在,我只需要在单击编辑文本并显示键盘时使用scrollview。我将scrollview设置为布局的根目录,但它扩展了此布局的高度。Scrollview应该只在键盘出现时工作,但现在它每次都工作,并破坏了我的线性布局。所以现在,当我使用scrollview时,布局比屏幕大。我该怎么办

<ScrollView
        android:layout_width="match_parent"
        android:id="@+id/scrollView"
        android:fillViewport="true"
        xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" android:layout_height="match_parent"
        tools:context=".activities.FormDialog"
>

    <LinearLayout android:layout_width="match_parent" android:layout_height="match_parent"
                  android:orientation="vertical"
                  android:layout_alignParentTop="true" android:layout_alignParentLeft="true"
                  android:layout_alignParentStart="true" android:background="@drawable/new_background">

        <ImageView
                android:layout_width="84dp"
                android:id="@+id/imageView"
                android:src="@drawable/applogo"
                android:layout_alignParentTop="true" android:layout_centerHorizontal="true"
                android:layout_marginTop="16dp"
                android:layout_gravity="end" android:layout_marginRight="20dp"
                android:layout_height="29dp"/>
        <RelativeLayout
                android:orientation="vertical"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" android:layout_alignParentBottom="true"
                android:layout_alignParentLeft="true" android:layout_alignParentStart="true"
        >
            <TextView
                    android:text="Info"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content" android:id="@+id/missedCall"
                    android:layout_alignParentTop="true" android:layout_centerHorizontal="true"
                    android:textColor="@color/apptheme_color"
                    android:layout_marginBottom="16dp" android:textSize="15sp" android:layout_marginTop="16dp"/>
        </RelativeLayout>
        <LinearLayout
                android:orientation="horizontal"
                android:layout_weight="2" android:layout_height="wrap_content" android:layout_width="match_parent"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp"
                android:layout_marginBottom="6dp" android:weightSum="1">
            <ImageView
                    android:text="Button"
                    android:id="@+id/leftButton"
                    android:layout_width="40dp" android:layout_height="40dp"
                    android:layout_gravity="center_vertical" android:src="@drawable/left"/>
            <TextView
                    android:text="Text"
                    android:layout_width="244dp"
                    android:layout_height="match_parent" android:id="@+id/numberTextView"
                    android:gravity="center_vertical|center_horizontal|center"
                    android:textColor="@color/apptheme_color" android:textSize="24sp"
                    android:layout_weight="1"/>
            <ImageView
                    android:text="Button"
                    android:id="@+id/rightButton"
                    android:layout_gravity="center_vertical|center_horizontal"
                    android:layout_width="40dp" android:layout_height="40dp"
                    android:src="@drawable/right_arrow"/>
        </LinearLayout>
        <TextView
                android:text="Text"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" android:id="@+id/textView7"
                android:textColor="@color/apptheme_color" android:textAlignment="viewStart"
                android:textSize="18sp"
                android:layout_weight="0.5"
                android:layout_below="@+id/missedCall" android:layout_alignParentLeft="true"
                android:layout_alignParentStart="true" android:layout_marginLeft="30dp"
                android:layout_marginRight="25dp"/>
        <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textPersonName"
                android:ems="10"
                android:id="@+id/nameTextView"
                android:background="@drawable/blueborder"
                android:textColorHint="#FFFFFF"
                android:textColor="#FFFFFF"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp" android:layout_marginTop="16dp"
                android:paddingTop="10dp" android:paddingBottom="10dp"
                android:hint="Edit1" android:paddingLeft="10dp"/>
        <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textPersonName"
                android:ems="10"
                android:id="@+id/detailsTextView"
                android:background="@drawable/blueborder"
                android:textColorHint="#FFFFFF"
                android:textColor="#FFFFFF"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp" android:layout_marginTop="6dp"
                android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingLeft="10dp"
                android:layout_weight="1"
                android:hint="Edit2"/>
        <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textWebEmailAddress"
                android:ems="10"
                android:id="@+id/emailEditText"
                android:textColorHint="#FFFFFF"
                android:textColor="#FFFFFF"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp" android:layout_marginTop="6dp"
                android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingLeft="10dp"
                android:layout_weight="1"
                android:hint="Edit3"/>
        <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textPersonName"
                android:ems="10"
                android:id="@+id/companyEditText"
                android:background="@drawable/blueborder"
                android:textColorHint="#FFFFFF"
                android:textColor="#FFFFFF"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp" android:layout_marginTop="6dp"
                android:paddingTop="10dp" android:paddingBottom="10dp" android:paddingLeft="10dp"
                android:layout_weight="1"
                android:hint="Edit4"/>
        <EditText
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:inputType="textMultiLine|textPersonName"
                android:ems="10"
                android:id="@+id/noteEditText"
                android:background="@drawable/blueborder"
                android:textColorHint="#FFFFFF"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp" android:layout_marginTop="6dp"
                android:paddingTop="10dp" android:paddingBottom="20dp" android:paddingLeft="10dp"
                android:layout_weight="3.33"
                android:scrollbars="vertical" android:hint="Edit5" android:lines="2" android:textColor="#FFFFFF"
                android:gravity="top|center_vertical"/>
        <CheckBox
                android:text="Check1"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" android:id="@+id/newContactCheckbox"
                android:layout_marginLeft="20dp"
                android:textColor="@color/apptheme_color"
                android:layout_weight="1"
        />
        <CheckBox
                android:text="Check2"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" android:id="@+id/isWantedCheckbox" android:layout_marginLeft="20dp"
                android:textColor="@color/apptheme_color"
                android:layout_weight="1"
        />
        <Button
                android:text="Send"
                android:layout_width="match_parent"
                android:layout_height="wrap_content" android:id="@+id/addButton" android:layout_weight="2"
                android:textColor="#02485a" android:background="@drawable/blackborder"
                android:layout_marginLeft="25dp" android:layout_marginRight="25dp"
                android:layout_marginBottom="16dp"/>
        <TextView
                android:text="Cancel"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content" android:id="@+id/notRegisterTextView"
                android:textSize="14sp" android:textColor="@color/apptheme_color"
                android:layout_marginLeft="25dp" android:padding="7dp"
        />
    </LinearLayout>

</ScrollView>


在清单中,我设置了android:WindowsOfInputMode=“stateUnchanged | adjustResize”

尝试更改ScrollView和LinearLayout的高度以包装内容这不是一个解决方案:(在RelativeLayout中包装ScrollView)?看起来LinearLayout比ScrollView大