Android防止大小调整框

时间:2015-06-07 01:54:14

标签: android android-layout android-activity resize

我正在尝试制作一个四功能计算器应用程序。两个空行是计算中涉及的数字。我遇到的问题是“结果”框。由于我使用了relativelayout,因此所有内容的放置都与“结果”框相关。如果我先计算,比如2 + 2,'结果'是4,那就没关系。但是,如果我做5 + 5并且'结果'现在是10,一个两位数字,一切都会因为'结果'发生变化而稍微改变。有没有办法让'结果'改变大小,但保留其他一切?

Picture of current app UI

1 个答案:

答案 0 :(得分:1)

所以你可能不会使用相对布局。 但我们可以使用TableLayout吗?

<?xml version="1.0" encoding="utf-8"?>
<TableLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="match_parent"
android:layout_height="match_parent">
<TableRow
    android:layout_weight="2"
    android:layout_margin="20dp"
    android:layout_height="0dp"
    android:layout_width="match_parent">
    <EditText
        android:inputType="number"
        android:layout_gravity="bottom"
        android:id="@+id/num_1"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"/>
    <Space  android:layout_weight="1"
        android:layout_width="0dp"/>
    <EditText
        android:inputType="number"
        android:layout_gravity="bottom"
        android:id="@+id/num_2"
        android:layout_weight="1"
        android:layout_width="0dp"
        android:layout_height="wrap_content"/>
</TableRow>
<TableRow
    android:layout_weight="1"
    android:layout_margin="20dp"
    android:layout_height="0dp"
    android:layout_width="match_parent">

    <TextView

        android:singleLine="true"
        android:text="Result"
        android:gravity="center"
        android:textSize="24sp"
        android:id="@+id/result"
        android:layout_width="0dp"
        android:layout_weight="1"
        android:layout_height="wrap_content"
        android:layout_column="18" />
</TableRow>
<TableRow
    android:layout_weight="1"
    android:layout_margin="20dp"
    android:layout_height="0dp"
    android:layout_width="match_parent">
    <Button
        android:text="ADD"
        android:id="@+id/add"
        android:layout_width="0dp"
        android:layout_weight="3"
        android:layout_height="wrap_content"/>
    <Space
        android:layout_width="0dp"
        android:layout_weight="2"
        />
    <Button
        android:text="SUBTRACT"
        android:id="@+id/sub"
        android:layout_weight="3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"/>
  </TableRow>
  <TableRow
    android:layout_weight="1"
    android:layout_margin="20dp"
    android:layout_height="0dp"
    android:layout_width="match_parent">
    <Button
        android:text="MULTIPLY"
        android:id="@+id/multi"
        android:layout_width="0dp"
        android:layout_weight="3"
        android:layout_height="wrap_content"/>
    <Space
        android:layout_width="0dp"
        android:layout_weight="2"
        />
    <Button
        android:text="DIVIDE"
        android:id="@+id/divide"
        android:layout_weight="3"
        android:layout_width="0dp"
        android:layout_height="wrap_content"/>
</TableRow>

</TableLayout>