【问题标题】:Buttons Are Dependent With Their Position按钮取决于它们的位置
【发布时间】:2018-08-04 21:49:49
【问题描述】:

我有一个有五个按钮和五个复选框的屏幕。但是这个按钮在屏幕上的位置相互依赖。例如,在XML 文件中,如果我改变第一个按钮的位置,其他按钮和checkBoxes 的位置也会改变。但我不想要这个。我只想更改一个按钮位置。

这是我的 XML 文件:

<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="16dp"
    android:paddingRight="16dp" >

    <Button
        android:id="@+id/buttonN381 "
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/buttoN291 "
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/checkBox3"
        android:layout_toStartOf="@+id/checkBox3"
        android:onClick="kelimeGösterimi"
        android:text="31 - 40" />

    <Button
        android:id="@+id/buttoN291 "
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_centerVertical="true"
        android:layout_toLeftOf="@+id/checkBox2"
        android:layout_toStartOf="@+id/checkBox2"
        android:onClick="kelimeGösterimi"
        android:text="41 - 50" />

    <Button
        android:id="@+id/buttoN371"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/buttonN381 "
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/checkBox4"
        android:layout_toStartOf="@+id/checkBox4"
        android:onClick="kelimeGösterimi"
        android:text="21 - 30" />

    <Button
        android:id="@+id/buttoN611"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/buttoN371"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/checkBox5"
        android:layout_toStartOf="@+id/checkBox5"
        android:onClick="kelimeGösterimi"
        android:text="11 - 20" />

    <Button
        android:id="@+id/buttoN601"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_above="@+id/buttoN611"
        android:layout_alignParentLeft="true"
        android:layout_alignParentStart="true"
        android:layout_toLeftOf="@+id/checkBox6"
        android:layout_toStartOf="@+id/checkBox6"
        android:onClick="kelimeGösterimi"
        android:text="1 - 10" />


    <CheckBox
        android:id="@+id/checkBox2"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/buttonN381 "
        android:layout_toEndOf="@+id/buttonN381 "
        android:layout_toRightOf="@+id/buttonN381 " />

    <CheckBox
        android:id="@+id/checkBox3"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/buttoN371"
        android:layout_toEndOf="@+id/buttoN371"
        android:layout_toRightOf="@+id/buttoN371" />

    <CheckBox
        android:id="@+id/checkBox4"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/buttoN611"
        android:layout_toEndOf="@+id/buttoN611"
        android:layout_toRightOf="@+id/buttoN611" />

    <CheckBox
        android:id="@+id/checkBox5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/buttoN601"
        android:layout_toEndOf="@+id/buttoN601"
        android:layout_toRightOf="@+id/buttoN601" />

    <CheckBox
        android:id="@+id/checkBox6"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/buttoN601"
        android:layout_alignBottom="@+id/buttoN601"
        android:layout_alignParentEnd="true"
        android:layout_alignParentRight="true"
        android:layout_marginEnd="11dp"
        android:layout_marginRight="11dp" />


</RelativeLayout>

【问题讨论】:

  • 使用线性布局或放置您需要的布局草图,以便我可以帮助您

标签: android xml android-layout android-relativelayout


【解决方案1】:

当然,如果您尝试移动任何按钮,这将影响其他视图,因为您使用的是 RelativeLayout 并且您在上面分配了 belwo、toLeftOf、toRightOf ...等 此参数将视图链接在一起 为清楚了解RelativeLayoutsee this

要解决此问题,您有很多解决方案,只需尝试阅读有关 Android 布局 主题

我现在给你一个简单的解决方案,使用 LinearLayout。

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:paddingLeft="16dp"
    android:paddingRight="16dp" 
    android:orientation="horizontal"
    >
    <LinearLayout
        android:layout_width="0do"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:layout_weight="0.8"
        >
        <Button
            android:id="@+id/buttonn381"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="kelimeGösterimi"
            android:text="31 - 40" />
        <Button
            android:id="@+id/button291"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="kelimeGösterimi"
            android:text="41 - 50" />
        <Button
            android:id="@+id/button371"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="kelimeGösterimi"
            android:text="21 - 30" />
        <Button
            android:id="@+id/button611"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="kelimeGösterimi"
            android:text="11 - 20" />
        <Button
            android:id="@+id/button601"
            android:layout_width="match_parent"
            android:layout_height="wrap_content"
            android:onClick="kelimeGösterimi"
            android:text="1 - 10" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="0dp"
        android:layout_height="match_parent"
        android:orientation="vertical"
        android:layout_weight="0.2"
        >
    <CheckBox
        android:id="@+id/checkBox2"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
    <CheckBox
        android:id="@+id/checkBox3"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
         />
    <CheckBox
        android:id="@+id/checkBox4"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        />
    <CheckBox
        android:id="@+id/checkBox5"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        />
    <CheckBox
        android:id="@+id/checkBox6"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
         />
    </LinearLayout>
</LinearLayout>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-02-06
    • 1970-01-01
    • 1970-01-01
    • 2016-03-29
    • 1970-01-01
    • 2017-07-24
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多