如何将我的 Button 放置在视图的右侧

How can I position my Button at the right side of my view

我想在视图的最右侧放置一个按钮,但我尝试通过 Google 搜索进行的所有操作均无效。目前看起来像这样

xml 代码如下

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="50dp"
        android:layout_alignParentRight="true"
        android:layout_alignParentEnd="true"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:orientation="horizontal"
        android:layout_below="@+id/HeaderFrame"
        android:id="@+id/headerPanel">
        <LinearLayout
            android:layout_width="130dp"
            android:layout_height="wrap_content"
            android:layout_alignParentLeft="true"
            android:orientation="horizontal"
            android:id="@+id/LeftFrame">
            <TextView
                android:layout_width="45dp"
                android:layout_height="45dp"
                android:id="@+id/backBttn"
                android:textSize="30dp"
                android:text="&lt;"
                android:layout_below="@+id/HeaderFrame"
                android:layout_alignParentLeft="true"
                android:textStyle="bold"
                android:background="#ff9d9d9d"
                android:gravity="center_vertical|center_horizontal" />
            <TextView
                android:layout_width="45dp"
                android:layout_height="45dp"
                android:id="@+id/forwardBttn"
                android:textSize="30dp"
                android:text="&gt;"
                android:layout_below="@+id/HeaderFrame"
                android:textStyle="bold"
                android:background="#ff9d9d9d"
                android:gravity="center_vertical|center_horizontal"
                android:layout_marginLeft="5dp" />
        </LinearLayout>

        <Button
            android:layout_width="220dp"
            android:layout_height="50dp"
            android:id="@+id/CheckOutBttn"
            android:text="Return to Checkout"
            android:textColor="#ffffffff"
            android:textSize="20dp"
            android:layout_alignParentRight="true"                
            android:background="@drawable/template_green" />
    </LinearLayout>

谁能告诉我怎么做。

只需将您的顶部 <LinearLayout> 更改为 <RelativeLayout> 您的问题就解决了

作为布局的根,您必须使用 <RelativeLayout> 而不是 <LinearLayout>

以下是您想要实现的格式化代码片段:

<RelativeLayout
    android:layout_width="fill_parent"
    android:layout_height="50dp"
    android:layout_alignParentRight="true"
    android:layout_alignParentEnd="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_below="@+id/HeaderFrame"
    android:id="@+id/headerPanel">
    <LinearLayout
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:orientation="horizontal"
        android:id="@+id/LeftFrame">
        <TextView
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:id="@+id/backBttn"
            android:textSize="30dp"
            android:text="&lt;"
            android:layout_alignParentLeft="true"
            android:textStyle="bold"
            android:background="#ff9d9d9d"
            android:gravity="center_vertical|center_horizontal" />
        <TextView
            android:layout_width="45dp"
            android:layout_height="45dp"
            android:id="@+id/forwardBttn"
            android:textSize="30dp"
            android:text="&gt;"
            android:textStyle="bold"
            android:background="#ff9d9d9d"
            android:gravity="center_vertical|center_horizontal"
            android:layout_marginLeft="5dp" />
    </LinearLayout>

    <Button
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:id="@+id/CheckOutBttn"
        android:text="Return to Checkout"
        android:textColor="#ffffffff"
        android:textSize="20dp"
        android:layout_alignParentRight="true"                
        android:background="@drawable/template_green" />
</RelativeLayout>

如果你想玩转 LinearLayout,你可以试试这个布局

<LinearLayout 
    android:layout_width="match_parent"
    android:layout_height="50dp"
    android:orientation="horizontal" >

    <TextView
        android:id="@+id/backBttn"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:background="#ff9d9d9d"
        android:gravity="center_vertical|center_horizontal"
        android:text="&lt;"
        android:textSize="30dp"
        android:textStyle="bold" />

    <TextView
        android:id="@+id/forwardBttn"
        android:layout_width="45dp"
        android:layout_height="45dp"
        android:layout_marginLeft="5dp"
        android:background="#ff9d9d9d"
        android:gravity="center_vertical|center_horizontal"
        android:text=">"
        android:textSize="30dp"
        android:textStyle="bold" />

    <View
        android:layout_width="0dp"
        android:layout_height="wrap_content"
        android:layout_weight="1" />

    <Button
        android:layout_width="220dp"
        android:layout_height="50dp"
        android:id="@+id/CheckOutBttn"
        android:text="Return to Checkout"
        android:textColor="#ffffffff"
        android:textSize="20dp"
        android:background="@drawable/template_green" />

</LinearLayout>

你有什么错

在您的 xml 中,您设置了 android:layout_alignParentRight,这是相对布局 属性。但是您使用的是线性布局。

android:layout_alignParentRight : 如果为真,则使该视图的右边缘与父视图的右边缘匹配。容纳右边距。

所以设置你的父布局Relative Layout instead Linear Layout .

请设置2 Textview和Button在同一个RelativeLayout