如何缩放文本按钮android?

时间:2014-11-16 20:09:58

标签: java android xml user-interface

我想开发一个类似计算器的应用程序。问题是,文本按钮必须在每个设备上按相同的顺序排列。我试过这样但是我没有工作:

<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools" android:layout_width="fill_parent"
android:layout_height="fill_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=".MainActivity"
android:id="@+id/RelativeLayout1"
android:background="@drawable/neon_bg">



<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button1"
    android:layout_alignParentTop="true"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button2"
    android:layout_alignTop="@+id/button1"
    android:layout_toRightOf="@+id/button1"
    android:layout_toEndOf="@+id/button1"
    android:layout_weight="8"/>

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button3"
    android:layout_toEndOf="@+id/button2"
    android:layout_alignTop="@+id/button2"
    android:layout_toRightOf="@+id/button2" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button4"
    android:layout_toEndOf="@+id/button3"
    android:layout_alignTop="@+id/button3"
    android:layout_toRightOf="@+id/button3" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button5"
    android:layout_below="@+id/button1"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button6"
    android:layout_alignBottom="@+id/button5"
    android:layout_alignLeft="@+id/button2"
    android:layout_alignStart="@+id/button2" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button7"
    android:layout_alignTop="@+id/button6"
    android:layout_alignLeft="@+id/button3"
    android:layout_alignStart="@+id/button3" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button8"
    android:layout_alignBottom="@+id/button7"
    android:layout_toRightOf="@+id/button7"
    android:layout_toEndOf="@+id/button7" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button9"
    android:layout_below="@+id/button5"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button10"
    android:layout_alignBottom="@+id/button9"
    android:layout_alignLeft="@+id/button6"
    android:layout_alignStart="@+id/button6" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button11"
    android:layout_alignBottom="@+id/button10"
    android:layout_alignLeft="@+id/button7"
    android:layout_alignStart="@+id/button7" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button12"
    android:layout_alignBottom="@+id/button11"
    android:layout_toRightOf="@+id/button11"
    android:layout_toEndOf="@+id/button11" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:id="@+id/button13"
    android:layout_below="@+id/button9"
    android:layout_alignParentLeft="true"
    android:layout_alignParentStart="true" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button14"
    android:layout_below="@+id/button10"
    android:layout_alignLeft="@+id/button10"
    android:layout_alignStart="@+id/button10" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button15"
    android:layout_below="@+id/button10"
    android:layout_toRightOf="@+id/button14"
    android:layout_toEndOf="@+id/button14" />

<Button
    android:layout_width="140dp"
    android:layout_height="75dp"
    android:text="New Button"
    android:id="@+id/button16"
    android:layout_below="@+id/button12"
    android:layout_toRightOf="@+id/button15"
    android:layout_toEndOf="@+id/button15" />

如何让按钮缩放到屏幕所需的尺寸,因此按钮的大小相同?

由于

1 个答案:

答案 0 :(得分:0)

您必须使用weight_sumweight属性来实现您的目标。

例如,此处的父ViewGroupLinearLayout,其weight_sum为2,因此在您的情况下,它将为4,其子视图组为RelativeLayout {{1}在你的情况下,它是1,所以它将是1,而不是它,你将weight就是全部。

Buttons

它应该可以解决你的问题。