EditText旁边的android按钮

时间:2013-01-30 13:08:07

标签: android relativelayout

我在设计聊天布局时遇到了问题。我的XML列在下面。

所以布局由3部分组成:标题(RelativeLayout里面有多个视图),ListView和页脚(RelativeLayout EditTextButton) 。发送按钮位于EditText旁边,但EditText可以扩展到最多6行,我需要按钮保持在底部。 A无法使用alignParentBottom,因为它会导致错误的依赖关系,并且页脚扩展会将ListView推出屏幕。我还尝试将布局更改为线性布局,但是当ExitText展开以允许多行输入时,仍然无法强制按钮保持在底部。任何建议表示赞赏。

  <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=".ChatActivity" >

<RelativeLayout
    android:id="@+id/RL_header"
    android:layout_width="match_parent"
    android:layout_height="60dp"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true"
    android:background="#7B7B7B"
    android:gravity="center_vertical" >

    <ImageView
        android:id="@+id/img_Contact_Icon"
        android:layout_width="55dp"
        android:layout_height="55dp"
        android:layout_alignParentLeft="true"
        android:layout_centerVertical="true"
        android:padding="5dp"
        android:src="@drawable/ic_launcher" />

    <TextView
        android:id="@+id/tvContactName"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignTop="@+id/img_Contact_Icon"
        android:layout_toRightOf="@+id/img_Contact_Icon"
        android:text="testname"
        android:textAppearance="?android:attr/textAppearanceMedium" />

    <TextView
        android:id="@+id/tvPartnerRegion"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBottom="@+id/img_Contact_Icon"
        android:layout_alignLeft="@+id/tvContactName"
        android:layout_marginBottom="5dp"
        android:text="@string/tvFrom"
        android:textAppearance="?android:attr/textAppearanceMedium" />


</RelativeLayout>

<RelativeLayout
    android:id="@+id/RL_footer"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentBottom="true"
     >

    <EditText
        android:id="@+id/etChatInput"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_toLeftOf="@+id/btnSend"
        android:ems="10"
        android:hint="@string/etWriteMessageHint"
        android:maxLines="6" />

    <Button
        android:id="@+id/btnSend"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentRight="true"

        android:text="@string/btnSend" />

</RelativeLayout>

<ListView
    android:id="@android:id/list"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_above="@+id/RL_footer"
    android:layout_below="@+id/RL_header"
    android:layout_centerHorizontal="true"
    android:divider="@android:color/transparent"
    android:dividerHeight="10.0sp" >
</ListView>

1 个答案:

答案 0 :(得分:1)

enter image description here

<LinearLayout
        android:id="@+id/lay"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:background="#000000"
        android:gravity="center|left"
        android:orientation="horizontal"
        android:weightSum="3" >



        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1.8"
            android:gravity="center"
            android:padding="10dip" >

            <EditText
                android:id="@+id/Box"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:background="@drawable/message_focus"
                android:hint="message_title"
                android:imeOptions="actionDone"
                android:padding="8dip"
                android:singleLine="true"
                android:textColor="#333"
                android:textSize="12dip" />
        </LinearLayout>

        <LinearLayout
            android:layout_width="0dp"
            android:layout_height="fill_parent"
            android:layout_weight="0.6"
            android:gravity="center"
            android:paddingLeft="5dip" >

            <Button
                android:id="@+id/Button"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:background="@drawable/ic_launcher" />
        </LinearLayout>
    </LinearLayout>