【问题标题】:Relative layout repeatedly multiple views in same location相对布局在同一位置重复多个视图
【发布时间】:2016-09-02 06:30:31
【问题描述】:

在包含一个编辑文本的相对布局中,一个微调器一个图像在添加新的联系表单。当我单击添加按钮 android 时,相同的布局在相同的位置重复。在这里,我在 xml 中附加了我的代码。感谢您的帮助

<RelativeLayout
    android:id="@+id/addcontact_relative2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_centerVertical="true"
    android:layout_below="@+id/addcontact_relative1">

    <EditText
        android:id="@+id/addcontact_edit_mail"
        android:layout_width="180dp"
        android:layout_height="40dp"
        android:hint="Mail"
        android:background="@drawable/edit_rounded"
        android:padding="7dp"
        android:inputType="textEmailAddress"
        android:layout_centerVertical="true"
        android:layout_alignParentLeft="true"
        android:layout_marginLeft="7dp"
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:layout_marginRight="3dp"
        />
    <Spinner
        android:id="@+id/addcontact_mail_spin"
        android:layout_width="120dp"
        android:layout_height="40dp"
        android:layout_centerHorizontal="true"
        android:background="@drawable/edit_rounded"
        android:layout_toRightOf="@+id/addcontact_edit_mail"
        android:layout_marginLeft="5dp"
        android:spinnerMode="dropdown"
        android:layout_marginTop="10dp"
        android:layout_marginBottom="10dp"
        android:scrollbars="none"
        android:layout_marginRight="3dp"
        android:layout_centerVertical="true"
        android:entries="@array/types"
        />
    <ImageView
        android:id="@+id/addcontact_add_email_image"
        android:layout_width="30dp"
        android:layout_height="30dp"
        android:layout_centerVertical="true"
        android:layout_alignParentRight="true"
        android:layout_marginRight="5dp"
        android:scaleType="fitXY"
        android:adjustViewBounds="true"
        android:src="@drawable/peopleadd"
        />

</RelativeLayout>

【问题讨论】:

  • 重点是您使用 @+id 来引用已创建的 id,因此,您创建新的 id 并且元素不引用您期望的 id到。解决方案:在引用时将@+d改为@id(即:在toRightOf中)。请研究RelativeLayout。

标签: android xml android-studio android-relativelayout android-studio-2.1


【解决方案1】:

这就是RelativeLayout 的重点。将其更改为具有垂直方向(如果您想要一个在另一个之下)或水平方向的 LinearLayout。或者你可以在你的RelativeLayout中为你的layout.xml添加一些东西,比如各种android:layout_align模式。

【讨论】:

  • 我使用的根布局是相对布局,但是可以改变这个位置的线性布局。