4

在 Eclipse 编辑器中,我的 android 布局文件出现以下错误:

Invalid layout param in a RelativeLayout: layout_weight

布局 :

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent">

    <EditText
        android:id="@+id/text_input"    
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        android:layout_weight="0.7"
        />

    <EditText
        android:id="@+id/text_input1"
        android:layout_width="20dp"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        android:layout_toRightOf="@id/text_input"
        />

</RelativeLayout>

我的 layout_weight 有什么问题?

4

2 回答 2

4

相对布局不支持 weight

Linearlayout支持它。你可以Linearlayout像下面这样使用:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="Horizontal">

    <EditText
        android:id="@+id/text_input"    
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        android:layout_weight="0.7"
        />

    <EditText
        android:id="@+id/text_input1"
        android:layout_width="20dp"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        />
</LinearLayout>
于 2014-05-22T05:46:39.770 回答
0

layout_weight 用于 Parent LinearLayout 但这里您的父布局是 RelativeLayout。所以你不能使用它。

 <?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="Horizontal">

    <EditText
        android:id="@+id/text_input"    
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        android:layout_weight="0.7"
        />

    <EditText
        android:id="@+id/text_input1"
        android:layout_width="20dp"
        android:layout_height="wrap_content"
        android:layout_gravity="bottom"
        android:inputType="textMultiLine"
        android:background="@drawable/bg_textinput"
        />
</LinearLayout>
于 2014-05-22T05:47:52.077 回答