奇怪的显示使用LinearLayout

时间:2013-12-30 22:48:01

标签: android drawable android-drawable

我决定试用android并且我想创建一个简单的布局,但渲染并不是我所期望的。什么可能是错的?

<?xml version="1.0" encoding="utf-8"?>

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:background="@drawable/post_background">

    <LinearLayout
        android:orientation="horizontal"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:id="@+id/linearLayout">

        <EditText
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_weight="80"
            android:id="@+id/comment_box"
            android:background="@drawable/post_inner"
            android:layout_margin="5dp"
            android:text="comment goes here" />

        <TextView
            android:layout_width="0dp"
            android:layout_height="40dp"
            android:layout_weight="20"
            android:id="@+id/send"
            android:background="@drawable/post_inner"
            android:layout_margin="5dp"
            android:text="SEND"  />

    </LinearLayout>

</RelativeLayout>

渲染看起来像这个enter image description here

TextView与EditText没有水平对齐。

3 个答案:

答案 0 :(得分:1)

我不知道为什么,但是如果您将“发送”属性android:layout_margin替换为android:padding则可行:)

答案 1 :(得分:1)

TextView的高度更改为

android:layout_height="match_parent"

答案 2 :(得分:0)

你可以尝试这个解决方案,它几乎应该是相同的(没有包裹LinearLayout):

<RelativeLayout
  xmlns:android="http://schemas.android.com/apk/res/android"
  android:orientation="vertical"
  android:layout_width="match_parent"
  android:layout_height="match_parent"
  android:background="@drawable/post_background">

  <TextView
    android:id="@+id/send"
    android:layout_width="wrap_content"
    android:layout_height="40dp"
    android:background="@drawable/post_inner"
    android:layout_margin="5dp"
    android:text="SEND"
    android:gravity="center"
    android:padding="8dp"
    android:layout_alignParentRight="true"
    android:layout_alignParentBottom="true"
    />

  <EditText
    android:id="@+id/comment_box"
    android:layout_width="match_parent"
    android:layout_height="40dp"
    android:background="@drawable/post_inner"
    android:layout_margin="5dp"
    android:text="comment goes here"
    android:layout_toLeftOf="@id/send"
    android:layout_alignParentBottom="true"/>

</RelativeLayout>