如何在Android中另一个右侧的2个EditTexts中心?

时间:2016-12-14 16:33:48

标签: android android-layout android-relativelayout

我想实现以下目标:

enter image description here

这一切都集中在其他小部件下方的底部。它全部在RelativeLayout中。蓝色EditText(edittexts)必须是可点击的和其他颜色。如何在底部对齐这两个editTexts,一个在另一个旁边?

我的XML:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
                android:id="@+id/parent_relative"
                android:layout_width="match_parent"
                android:layout_height="match_parent">
    <ImageView
        android:id="@+id/icon_user_login"
        android:layout_marginTop="50dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:src="@drawable/circlered"/>

    <TextView
        android:id="@+id/textViewDisplayPrijava"
        android:layout_marginTop="150dp"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_centerHorizontal="true"
        android:text="Prijava z MojAvto računom"
        android:textSize="25sp"/>


    <EditText
        android:id="@+id/textViewLoginEmail"
        android:textSize="15sp"
        android:inputType="textEmailAddress"
        android:layout_marginTop="20dp"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_below="@id/textViewDisplayPrijava"
        android:layout_alignLeft="@id/textViewDisplayPrijava"
        android:layout_alignRight="@id/textViewDisplayPrijava"
        android:hint="E-poštni naslov"
        android:drawableLeft="@drawable/user_icon"
        android:drawablePadding="20dp"/>


    <EditText
        android:id="@+id/editTextGeslo"
        android:layout_width="0dp"
        android:textSize="15sp"
        android:inputType="textPassword"
        android:layout_marginTop="5dp"
        android:layout_height="wrap_content"
        android:layout_below="@id/textViewLoginEmail"
        android:layout_alignLeft="@id/textViewLoginEmail"
        android:layout_alignRight="@id/textViewLoginEmail"
        android:hint="Geslo"
        android:drawableLeft="@drawable/password_icon"
        android:drawablePadding="20dp"/>

    <TextView
        android:id="@+id/textViewPozabljenoGeslo"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignRight="@id/textViewDisplayPrijava"
        android:layout_below="@id/editTextGeslo"
        android:text="Pozabljeno geslo"
        android:onClick="forgotPassword"
        android:clickable="true"/>



    <Button
        android:layout_marginTop="15dp"
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_below="@id/textViewPozabljenoGeslo"
        android:layout_alignLeft="@id/textViewDisplayPrijava"
        android:layout_alignRight="@id/textViewDisplayPrijava"
        android:text="PRIJAVA"/>

    <TextView
        android:id="@+id/textViewNimatePrijave"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:text="EditText1"/>

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentBottom="true"
        android:layout_toRightOf="@id/textViewNimatePrijave"
        android:text="EditText2"/>

</RelativeLayout>

1 个答案:

答案 0 :(得分:2)

您需要使用嵌套视图。

将其置于容器视图中,如(LinearLayout或RelativeLayout)并将其与中心对齐。

以下是代码示例:

<RelativeLayout android:layout_width="match_parent"
                    android:layout_height="match_parent">
        <RelativeLayout android:layout_width="wrap_content"
                        android:layout_height="wrap_content"
                        android:layout_centerHorizontal="true"
                        android:layout_alignParentBottom="true">
            <TextView android:layout_width="wrap_content"
                      android:id="@+id/text_view_first"
                      android:layout_centerVertical="true"
                      android:layout_height="wrap_content"
                      android:layout_alignParentLeft="true"
                      android:text="There are 2"/>
            <EditText android:layout_width="wrap_content"
                      android:layout_toRightOf="@id/text_view_first"
                      android:layout_centerVertical="true"
                      android:id="@+id/edit_text_second"
                      android:layout_height="wrap_content"
                      android:text="editText"/>
        </RelativeLayout>
    </RelativeLayout>

如果您需要支持API大于API 16的版本,那么最好使用android:layout_alignParentLeft而不是android:layout_alignParentStart。这是指向documentation的链接。

Here您可以找到Google提供的指南,了解如何使用RelativeLayout充分发挥其功能。