对齐按钮时出现问题

发布于 2024-11-05 04:10:55 字数 1351 浏览 4 评论 0原文

我想对齐这些输入,使其右侧有两个自动完成框,右侧有一个较小的按钮。然而,我最终得到了一个涵盖所有内容的大型自动完成功能(第二个)。

    <RelativeLayout
        android:layout_alignParentBottom="true" 
        android:id="@+id/transport_search"
        android:background="@color/dark_grey"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent">

        <AutoCompleteTextView
            android:id="@+id/transport_autoCompleteFrom"
            android:layout_width="fill_parent"
            android:layout_weight="5"
            ></AutoCompleteTextView>

        <Button
            android:id="@+id/transport_switchDirection"
            android:layout_toRightOf="@+id/transport_autoCompleteFrom"
            android:layout_width="fill_parent"
            android:layout_weight="1"
            ></Button>

        <AutoCompleteTextView
            android:id="@+id/transport_autoCompleteTo"
            android:layout_width="fill_parent"
            android:layout_weight="5"
            ></AutoCompleteTextView>

        <Button
            android:id="@+id/transport_go"
            android:layout_toRightOf="@+id/transport_autoCompleteTo"
            android:layout_width="fill_parent"
            android:layout_weight="1"
            ></Button>

    </RelativeLayout>

我做错了什么?

I want to align those inputs to have two autocomplete box on the right, on a smaller button on their right. However I end up with a large autocomplete (second one) covering everything.

    <RelativeLayout
        android:layout_alignParentBottom="true" 
        android:id="@+id/transport_search"
        android:background="@color/dark_grey"
        android:layout_height="wrap_content"
        android:layout_width="fill_parent">

        <AutoCompleteTextView
            android:id="@+id/transport_autoCompleteFrom"
            android:layout_width="fill_parent"
            android:layout_weight="5"
            ></AutoCompleteTextView>

        <Button
            android:id="@+id/transport_switchDirection"
            android:layout_toRightOf="@+id/transport_autoCompleteFrom"
            android:layout_width="fill_parent"
            android:layout_weight="1"
            ></Button>

        <AutoCompleteTextView
            android:id="@+id/transport_autoCompleteTo"
            android:layout_width="fill_parent"
            android:layout_weight="5"
            ></AutoCompleteTextView>

        <Button
            android:id="@+id/transport_go"
            android:layout_toRightOf="@+id/transport_autoCompleteTo"
            android:layout_width="fill_parent"
            android:layout_weight="1"
            ></Button>

    </RelativeLayout>

What am I doing wrong?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

清风挽心 2024-11-12 04:10:55

您可以在RelativeLayout中使用LinearLayout。下面显示了两个排成一行的按钮:

    <LinearLayout android:id="@+id/buttons" android:layout_below="@id/aboveControl1"
    android:layout_width="fill_parent"  android:layout_height="wrap_content" 
    android:orientation="horizontal" android:weightSum="2" 
    android:layout_alignLeft="@id/otherControl1" android:layout_alignRight="@id/otherControl2" >
    <Button android:id="@+id/button10" android:layout_width="fill_parent" 
        android:layout_height="wrap_content" android:text="Ok" android:layout_weight="1" />
    <Button android:id="@+id/button11" android:layout_width="fill_parent" 
        android:layout_height="wrap_content" android:text="Cancel" android:layout_weight="1" />
</LinearLayout>

You can use LinearLayout inside RelativeLayout. Below shows two buttons in line:

    <LinearLayout android:id="@+id/buttons" android:layout_below="@id/aboveControl1"
    android:layout_width="fill_parent"  android:layout_height="wrap_content" 
    android:orientation="horizontal" android:weightSum="2" 
    android:layout_alignLeft="@id/otherControl1" android:layout_alignRight="@id/otherControl2" >
    <Button android:id="@+id/button10" android:layout_width="fill_parent" 
        android:layout_height="wrap_content" android:text="Ok" android:layout_weight="1" />
    <Button android:id="@+id/button11" android:layout_width="fill_parent" 
        android:layout_height="wrap_content" android:text="Cancel" android:layout_weight="1" />
</LinearLayout>
嘦怹 2024-11-12 04:10:55

如果您更喜欢使用RelativeLayout,也许以下内容可以让您更接近您想要实现的目标。

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_alignParentBottom="true"
    android:id="@+id/transport_search"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent">
    <AutoCompleteTextView
        android:id="@+id/transport_autoCompleteFrom"
        android:layout_width="100dip"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:text="auto 1" />
    <Button
        android:id="@+id/transport_switchDirection"
        android:layout_toRightOf="@id/transport_autoCompleteFrom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="button1" />
    <AutoCompleteTextView
        android:id="@+id/transport_autoCompleteTo"
        android:layout_below="@id/transport_autoCompleteFrom"
        android:layout_width="100dip"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:text="auto 2" />
    <Button
        android:id="@+id/transport_go"
        android:layout_toRightOf="@id/transport_autoCompleteTo"
        android:layout_below="@id/transport_switchDirection"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="button2" />
</RelativeLayout>

以下是此布局的屏幕截图。

此外,您可能还想看看如何使用 TableLayout 来获得类似的结果 < a href="https://stackoverflow.com/questions/5642404">Android 创建对齐字段布局

If you prefer to use RelativeLayout, perhaps the following gets you closer to what you're trying to achieve.

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
    xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_alignParentBottom="true"
    android:id="@+id/transport_search"
    android:layout_height="wrap_content"
    android:layout_width="fill_parent">
    <AutoCompleteTextView
        android:id="@+id/transport_autoCompleteFrom"
        android:layout_width="100dip"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:text="auto 1" />
    <Button
        android:id="@+id/transport_switchDirection"
        android:layout_toRightOf="@id/transport_autoCompleteFrom"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="button1" />
    <AutoCompleteTextView
        android:id="@+id/transport_autoCompleteTo"
        android:layout_below="@id/transport_autoCompleteFrom"
        android:layout_width="100dip"
        android:layout_height="wrap_content"
        android:singleLine="true"
        android:text="auto 2" />
    <Button
        android:id="@+id/transport_go"
        android:layout_toRightOf="@id/transport_autoCompleteTo"
        android:layout_below="@id/transport_switchDirection"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="button2" />
</RelativeLayout>

Following is a screenshot of this layout.

Also, you may want to take a look at how TableLayout was used for a similar result in Android Create aligned fields Layout

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文