我是android的新手,我对relativeLayout有问题,相对Lyout里面的所有视图都没有显示:editTexts和spinners,我看不出错误在哪里:(
这是xml文件:
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:layout_weight="0.01"
android:orientation="horizontal"
android:padding="10dp" >
<EditText
android:id="@+id/fname"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/fname"
android:inputType="text"
android:textSize="12sp"
/>
<EditText
android:id="@+id/lname"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/lname"
android:inputType="text"
android:textSize="12sp"
android:layout_toRightOf="@+id/fname"
/>
<Spinner
android:id="@+id/catspin"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:entries="@array/cat"
android:prompt="@string/cat"
android:layout_below="@+id/fname"
/>
<Spinner
android:id="@+id/rolespin"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:entries="@array/role"
android:prompt="@string/role"
android:layout_toRightOf="@+id/catspin"
/>
<EditText
android:id="@+id/oparea"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/oparea"
android:inputType="text"
android:textSize="12sp"
android:layout_below="@+id/catspin"
/>
<EditText
android:id="@+id/job"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/job"
android:inputType="text"
android:textSize="12sp"
android:layout_below="@+id/oparea"
/>
<EditText
android:id="@+id/phone"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/phone"
android:inputType="text"
android:textSize="12sp"
android:layout_below="@+id/job"
/>
<EditText
android:id="@+id/email"
android:layout_width="0dp"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/email"
android:inputType="text"
android:textSize="12sp"
android:layout_toRightOf="@+id/phone"
/>
</RelativeLayout>
答案 0 :(得分:4)
layout_weight
不适用于RelativeLayout
,适用于LinearLayout
。因此,EditText
和Spinner
都是0dp
宽,因此不可见。
答案 1 :(得分:0)
从android:layout_weight="0.01" android:orientation="horizontal"
中移除RelativeLayout
这两个属性,然后检查。
android:layout_weight
在RelativeLayout
中不起作用,而在LinearLayout
中起作用。所以制作你的EditTexts和Spinner的android:layout_width="wrap_content"
。
答案 2 :(得分:-1)
<RelativeLayout
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:padding="10dp"
xmlns:android="http://schemas.android.com/apk/res/android">
<EditText
android:id="@+id/fname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="@string/fname"
android:inputType="text"
android:textSize="12sp"
/>
<EditText
android:id="@+id/lname"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:hint="@string/lname"
android:inputType="text"
android:textSize="12sp"
android:layout_toRightOf="@+id/fname"
/>
<Spinner
android:id="@+id/catspin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/cat"
android:prompt="@string/cat"
android:layout_below="@+id/fname"
/>
<Spinner
android:id="@+id/rolespin"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:entries="@array/role"
android:prompt="@string/role"
android:layout_toRightOf="@+id/catspin"
/>
<EditText
android:id="@+id/oparea"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/oparea"
android:inputType="text"
android:textSize="12sp"
android:layout_below="@+id/catspin"
/>
<EditText
android:id="@+id/job"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/job"
android:inputType="text"
android:textSize="12sp"
android:layout_below="@+id/oparea"
/>
<EditText
android:id="@+id/phone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/phone"
android:inputType="text"
android:textSize="12sp"
android:layout_below="@+id/job"
/>
<EditText
android:id="@+id/email"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_weight="1.0"
android:hint="@string/email"
android:inputType="text"
android:textSize="12sp"
android:layout_toRightOf="@+id/phone"
/>
</RelativeLayout>
答案 3 :(得分:-2)
线性布局您可以指定方向,但在相对布局中它们相互重叠,因此您需要为每个布局创建id并在每个视图中生成layout_below