我有一个显示聊天会话的片段,然后在其下方EditText
和Button
现在我的RelativeLayout
的高度包含EditText
和Button
硬编码。
我如何使RelativeLayout
高度仅为单行EditText
的高度,并且当用户键入足够的文本以保证新的文本行动态重新调整高度是否足够大,以包含现在更大的EditText
?
对于使用Google语音应用或点评应用的任何人,您都可以在回复邮件时看到这一点。
我在下面列出了我当前的布局。
<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>
答案 0 :(得分: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" >