Android Studio布局绑定

时间:2015-01-05 00:04:39

标签: java android android-studio

我通过几个按钮和textview为我的活动制作了一个布局。 但有一个问题。 如果我试图移动任何按钮或文本,整个事情搞砸了,我的意思是其他所有动作都像是通过一些债券连接起来。 我如何打破这些债券并使它们全部独立? 我尝试编辑xml但它没有帮助,它们仍然互相跟随。 这是一个按钮,例如:

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Calculate"
    android:id="@+id/buttonFcalculate"
    android:layout_alignParentBottom="true"
    android:layout_alignRight="@+id/textFacc"
    android:layout_alignEnd="@+id/textFacc"
    android:layout_marginBottom="87dp" />

我删除了android:layout_alignEnd =“@ + id / textFacc但它仍然是一样的 请帮忙。 如果需要,我可以发布图片或代码。 提前谢谢!

编辑:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent"
android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="cannon.gaming.physicsdroid.ForceActivity">

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Force"
    android:id="@+id/textForce"
    android:layout_alignParentTop="true"
    android:layout_centerHorizontal="true" />

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal|numberSigned"
    android:ems="10"
    android:id="@+id/editText"
    android:layout_above="@+id/textFacc"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginBottom="64dp" />

<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal|numberSigned"
    android:ems="10"
    android:id="@+id/editText2"
    android:layout_above="@+id/buttonFcalculate"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginBottom="31dp" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Mass (in kilograms):"
    android:id="@+id/textFmass"
    android:layout_alignBottom="@+id/editText"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true"
    android:layout_marginBottom="42dp" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Acceleration (in m/s^2):"
    android:id="@+id/textFacc"
    android:layout_above="@+id/editText2"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<Button
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Calculate"
    android:id="@+id/buttonFcalculate"
    android:layout_alignParentBottom="true"
    android:layout_alignRight="@+id/textFacc"
    android:layout_alignEnd="@+id/textFacc"
    android:layout_marginBottom="87dp" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="="
    android:id="@+id/textFequal"
    android:layout_alignBaseline="@+id/buttonFcalculate"
    android:layout_alignBottom="@+id/buttonFcalculate"
    android:layout_toRightOf="@+id/buttonFcalculate"
    android:layout_toEndOf="@+id/buttonFcalculate"
    android:layout_marginLeft="22dp"
    android:layout_marginStart="22dp" />

<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="0"
    android:id="@+id/textFresult"
    android:layout_alignBaseline="@+id/textFequal"
    android:layout_alignBottom="@+id/textFequal"
    android:layout_toRightOf="@+id/editText2"
    android:layout_toEndOf="@+id/editText2" />

<Spinner
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/spinner3"
    android:layout_below="@+id/textForce"
    android:layout_centerHorizontal="true"
    android:layout_marginTop="29dp" />

1 个答案:

答案 0 :(得分:0)

我不确定问题是什么,但我认为由于您使用的 android:layout-align ,所有内容都已关联。

我建议您将LinearLayoutorientation:vertical一起使用。

我制作了这个xml,检查它是否适合你:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
android:paddingBottom="@dimen/activity_vertical_margin"
tools:context="cannon.gaming.physicsdroid.ForceActivity"
android:orientation="vertical">

<TextView
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:gravity="center"
    android:textAppearance="?android:attr/textAppearanceLarge"
    android:text="Force"
    android:id="@+id/textForce" />
<Spinner
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:id="@+id/spinner3"
    android:layout_marginTop="29dp" />
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Mass (in kilograms):"
    android:id="@+id/textFmass"
    android:layout_marginTop="12dp" />
<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal|numberSigned"
    android:ems="10"
    android:id="@+id/editText"
    android:layout_marginBottom="64dp" />
<TextView
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:textAppearance="?android:attr/textAppearanceSmall"
    android:text="Acceleration (in m/s²):"
    android:id="@+id/textFacc"/>
<EditText
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:inputType="numberDecimal|numberSigned"
    android:ems="10"
    android:id="@+id/editText2"
    android:layout_above="@+id/buttonFcalculate"
    android:layout_marginBottom="31dp" />

<LinearLayout
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:orientation="horizontal">
    <Button
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Calculate"
        android:id="@+id/buttonFcalculate"
        android:layout_marginBottom="87dp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="="
        android:id="@+id/textFequal"
        android:layout_marginLeft="22dp"
        android:layout_marginStart="22dp" />

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:textAppearance="?android:attr/textAppearanceSmall"
        android:text="0"
        android:id="@+id/textFresult"
        android:layout_marginLeft="32dp"/>
</LinearLayout>