对齐屏幕按钮上的按钮 - Android

时间:2016-02-20 10:33:47

标签: android layout

我正在尝试使用布局将屏幕底部的按钮对齐,但我无法弄清楚我的代码有什么问题。我已经通过嵌套不同的布局尝试了几个选项,但没有很好的结果。 it looks like this right now

我的代码:

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
    android:id="@+id/ScrollView01"
    android:layout_width="match_parent"
    android:layout_height="match_parent">

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:id="@+id/relLayout"
    android:paddingBottom="@dimen/activity_vertical_margin"
    android:paddingLeft="@dimen/activity_horizontal_margin"
    android:paddingRight="@dimen/activity_horizontal_margin"
    android:paddingTop="@dimen/activity_vertical_margin"
    android:clickable="true"
    android:focusableInTouchMode="true"
    tools:context="com.example.aurora.personalinformation.MainActivity">
    <!-- Make the parent view clickable and focusable -->

    <TextView
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:text="@string/title"
        android:layout_centerHorizontal="true"
        android:id="@+id/title"
        android:textColor="#FF0000"
        android:textSize="25dp"
        android:textAlignment="center" />

    <TextView
        android:id="@+id/nameLable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/name"
        android:textColor="#000000"
        android:textStyle="bold"
        android:textSize="15dp"
        android:layout_marginTop="40dp"
        android:layout_below="@id/title"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <EditText android:id="@+id/edit_name"
        android:layout_weight="1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Enter name"
        android:layout_alignBottom="@id/nameLable"
        android:layout_toRightOf="@+id/phoneLable"
        android:layout_toEndOf="@+id/phoneLable"
        />

    <TextView
        android:id="@+id/addressLable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/address"
        android:textColor="#000000"
        android:textSize="15dp"
        android:textStyle="bold"
        android:layout_alignBottom="@+id/addressField"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <EditText
        android:id="@+id/addressField"
        android:layout_weight="0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Enter your address"
        android:layout_below="@id/edit_name"
        android:layout_alignLeft="@id/edit_name"
        android:layout_alignStart="@id/edit_name" />

    <TextView
        android:id="@+id/phoneLable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/phone"
        android:textColor="#000000"
        android:textStyle="bold"
        android:textSize="15dp"
        android:layout_below="@id/addressField"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_marginTop="20dp"/>

    <EditText
        android:id="@+id/phoneField"
        android:layout_weight="1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Enter your phone number"
        android:layout_below="@id/addressField"
        android:layout_toRightOf="@id/phoneLable"
        android:layout_toEndOf="@id/phoneLable" />

    <TextView
        android:id="@+id/emailLable"
        android:layout_below="@id/phoneLable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/email"
        android:textColor="#000000"
        android:textSize="15dp"
        android:textStyle="bold"
        android:layout_marginTop="20dp"/>

    <EditText
        android:id="@+id/emailField"
        android:layout_weight="1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Enter your email"
        android:layout_below="@id/phoneField"
        android:layout_alignLeft="@id/phoneField"
        android:layout_alignStart="@id/phoneField" />

    <TextView
        android:id="@+id/genderLable"
        android:layout_below="@id/emailLable"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/gender"
        android:layout_marginTop="20dp"
        android:textColor="#000000"
        android:textStyle="bold"
        android:textSize="15dp" />

    <Spinner
        android:id="@+id/gender"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:entries="@array/gender"
        android:layout_alignTop="@+id/genderLable"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignLeft="@+id/emailField"
        android:layout_alignStart="@+id/emailField" />

    <TextView
        android:id="@+id/country"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:text="Country"
        android:textColor="#000000"
        android:textSize="15dp"
        android:textStyle="bold"
        android:layout_below="@id/gender"
        android:layout_marginTop="15dp"/>

    <AutoCompleteTextView
        android:id="@+id/countryField"
        android:layout_weight="1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:hint="Enter your email"
        android:layout_below="@id/gender"
        android:layout_toRightOf="@id/phoneLable"
        android:layout_toEndOf="@id/phoneLable" />

    <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="bottom"
        android:layout_alignParentBottom="true">
    <Button
        android:id="@+id/buttonSave"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Send"
        android:layout_alignParentBottom="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true" />

    <Button
        android:id="@+id/buttonCancel"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Cancel"
        android:layout_alignParentBottom="true"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true" />
    </RelativeLayout>

</RelativeLayout>
    </ScrollView>

1 个答案:

答案 0 :(得分:0)

就像这样给你最后的RelativeLayout:

        <RelativeLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:gravity="bottom"
        android:layout_below="@+id/countryField"
        android:layout_alignParentBottom="true">
        <Button
            android:id="@+id/buttonSave"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Send"
            android:layout_alignParentBottom="true"
            android:layout_alignParentLeft="true"
            android:layout_alignParentStart="true" />

        <Button
            android:id="@+id/buttonCancel"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="Cancel"
            android:layout_alignParentBottom="true"
            android:layout_alignParentRight="true"
            android:layout_alignParentEnd="true" />
    </RelativeLayout>

还有一个问题是给RelativeLayout一个方向没有意义。