-1

我正在尝试像简单的计算器一样对齐按钮但是当我像这样对齐按钮时,当我运行它时,按钮可以从所需的位置移动。我不明白什么是问题。

这是代码:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_marginLeft="@dimen/activity_horizontal_margin"
android:gravity="fill_vertical"
android:paddingBottom="@dimen/activity_vertical_margin"
android:paddingLeft="@dimen/activity_horizontal_margin"
android:paddingRight="@dimen/activity_horizontal_margin"
android:paddingTop="@dimen/activity_vertical_margin"
tools:context=".MainActivity" >

<Button
    android:id="@+id/button11"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/button4"
    android:layout_alignBottom="@+id/button4"
    android:layout_alignLeft="@+id/button14"
    android:layout_toLeftOf="@+id/button12"
    android:onClick="@string/_onclick"
    android:text="@string/_4" />

<Button
    android:id="@+id/button16"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button4"
    android:layout_toLeftOf="@+id/button5"
    android:onClick="@string/_onclick"
    android:text="@string/_9" />

<Button
    android:id="@+id/button7"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/button6"
    android:layout_alignParentBottom="true"
    android:layout_marginBottom="16dp"
    android:onClick="@string/_onclick"
    android:text="@string/_" />

<Button
    android:id="@+id/button8"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@id/button7"
    android:layout_alignLeft="@+id/button11"
    android:layout_toLeftOf="@+id/button9"
    android:onClick="@string/_onclick"
    android:text="@string/_1" />

<Button
    android:id="@+id/button10"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button7"
    android:layout_toRightOf="@+id/button1"
    android:onClick="@string/_onclick"
    android:text="@string/_3" />

<Button
    android:id="@+id/button6"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button7"
    android:layout_alignLeft="@+id/button4"
    android:onClick="@string/_onclick"
    android:text="@string/_jam" />

<Button
    android:id="@+id/button4"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/button12"
    android:layout_alignBottom="@+id/button12"
    android:layout_alignLeft="@+id/button5"
    android:onClick="@string/_onclick"
    android:text="@string/_menha" />

<Button
    android:id="@+id/button5"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/button16"
    android:layout_alignBottom="@+id/button16"
    android:layout_alignLeft="@+id/button3"
    android:onClick="@string/_onclick"
    android:text="@string/_zarb" />

<Button
    android:id="@+id/button3"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button5"
    android:layout_alignParentRight="true"
    android:layout_marginRight="15dp"
    android:onClick="@string/_onclick"
    android:text="@string/_taghsim" />

<Button
    android:id="@+id/button14"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button11"
    android:layout_toLeftOf="@+id/button12"
    android:onClick="@string/_onclick"
    android:text="@string/_7" />

<Button
    android:id="@+id/button15"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button13"
    android:layout_alignLeft="@+id/button12"
    android:layout_toLeftOf="@+id/button13"
    android:onClick="@string/_onclick"
    android:text="@string/_8" />

<Button
    android:id="@+id/button9"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button7"
    android:layout_alignLeft="@id/button12"
    android:layout_alignTop="@id/button10"
    android:layout_toLeftOf="@+id/button10"
    android:onClick="@string/_onclick"
    android:text="@string/_2" />

<Button
    android:id="@+id/button2"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/button3"
    android:layout_alignBottom="@+id/button3"
    android:layout_toLeftOf="@+id/button3"
    android:layout_toRightOf="@+id/button1"
    android:onClick="@string/_onclick"
    android:text="@string/c" />

<Button
    android:id="@+id/button1"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button14"
    android:layout_alignLeft="@+id/button14"
    android:layout_alignParentBottom="false"
    android:layout_alignParentRight="false"
    android:layout_alignRight="@+id/button15"
    android:layout_alignWithParentIfMissing="false"
    android:layout_centerInParent="false"
    android:onClick="@string/_onclick"
    android:text="@string/ce" />

<Button
    android:id="@+id/button17"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/button7"
    android:layout_alignBottom="@+id/button7"
    android:layout_alignRight="@+id/button10"
    android:layout_toRightOf="@+id/button9"
    android:onClick="@string/_onclick"
    android:text="@string/_dot" />

<TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignLeft="@+id/button1"
    android:layout_alignParentTop="true"
    android:layout_marginLeft="17dp"
    android:layout_marginTop="59dp"
    android:textSize="20sp"
    tools:ignore="SpUsage" />

<Button
    android:id="@+id/button13"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@id/button10"
    android:layout_alignBaseline="@+id/button12"
    android:layout_alignBottom="@+id/button12"
    android:layout_alignLeft="@+id/button16"
    android:layout_below="@id/button16"
    android:layout_toLeftOf="@id/button4"
    android:onClick="@string/_onclick"
    android:text="@string/_6" />

<Button
    android:id="@+id/Button01"
    android:layout_width="match_parent"
    android:layout_height="wrap_content"
    android:layout_alignParentLeft="true"
    android:layout_below="@+id/button8"
    android:layout_toLeftOf="@+id/button17"
    android:onClick="@string/_onclick"
    android:text="@string/_0" />

<Button
    android:id="@+id/button12"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_above="@+id/button10"
    android:layout_toLeftOf="@+id/button13"
    android:onClick="@string/_onclick"
    android:text="@string/_5" />

这是我的问题的截图:http: //i39.tinypic.com/xm04lz.jpg http://i42.tinypic.com/ibgmk3.jpg

请帮助我如何解决问题

4

1 回答 1

1

你为什么要让你的生活如此艰难?停止这种疯狂的对齐方式并使用 LinearLayouts。创建一个LinearLayout并将 5 行按钮放入其中,每行为LinearLayout. 然后使用layout_weight参数将它们添加相同(或所需)的宽度。例子:

<LinearLayout>
 <LinearLayout>
   Button Button Button Button
 </LinearLayout>
 <LinearLayout>
   Button Button Button Button
 </LinearLayout>
 ....
</LinearLayout>
于 2013-08-02T15:07:06.190 回答