1

我有一个片段显示了一个聊天会话,然后在它下面一个EditText和一个Button

现在我有RelativeLayout包含EditTextButton硬编码的高度。

我如何让RelativeLayout高度仅是单行的高度,EditText并且当用户键入足够的文本以保证新的文本行动态地重新调整高度以使其足够大以包含现在更大的高度时EditText

对于使用过 Google Voice 应用程序或股票消息应用程序的任何人,您都可以在回复消息时看到这一点。

我在下面包含了我当前的布局。

    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent" >

    <RelativeLayout
        android:id="@+id/bottom_bar"
        android:layout_width="fill_parent"
        android:layout_height="90dp"
        android:layout_alignParentBottom="true"
        android:minHeight="60dp" >

        <ImageButton
            android:id="@+id/sendButton"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="false"
            android:layout_alignParentRight="true"
            android:layout_centerInParent="false"
            android:layout_centerVertical="true"
            android:background="@null"
            android:onClick="sendMessage"
            android:paddingBottom="15dp"
            android:paddingRight="5dp"
            android:paddingTop="10dp"
            android:src="@drawable/send" />

        <EditText
            android:id="@+id/sendText"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content"
            android:layout_alignParentBottom="false"
            android:layout_centerVertical="true"
            android:layout_marginBottom="5dp"
            android:layout_marginTop="5dp"
            android:layout_toLeftOf="@id/sendButton"
            android:hint="Enter Message"
            android:inputType="textMultiLine" >

        </EditText>

    </RelativeLayout>

    <fragment
        android:id="@+id/chatfragment"
        android:name="android.support.v4.app.ListFragment"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_above="@id/bottom_bar"
        android:layout_alignParentTop="true" />

</RelativeLayout>
4

1 回答 1

3

您是否尝试将嵌套的 RelativeLayout 的高度设置为wrap_content

<RelativeLayout
    android:id="@+id/bottom_bar"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
    android:minHeight="60dp" >
于 2012-07-31T16:54:28.813 回答