Android计算器布局


Android(安桌)计算器布局实现——解决整个屏幕方案

引言:

学完了android布局的几种方式,做了一个android计算器。我在网上搜索了这方面的资料,发现了布局都有问题,没有充满整个屏幕,只是占了一个部分。

老师的建议是:设置字体的大小是关键。但是在我设置好字体大小问题,解决屏幕问题后,发现字体居然没有居中。在靠着水平线的左边。而后使用android:gravity的这个属性,没有改变。但是后来发现,使用的TableLayout好像没有这个属性,嵌套使用了一个Layout,才解决了这个问题。

实现效果如下:

LayOut中的xml文件代码如下:

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    android:orientation="vertical" >
   
    <TextView
        android:id="@+id/writerinfo"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:textSize="@dimen/textviewsize"
        android:gravity="center_horizontal"
        android:text="@string/writer" />
   
    <TextView
        android:id="@+id/input"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:textSize="@dimen/textviewsize"
        android:text="@string/inputhint" />

    <TextView
        android:id="@+id/textView2"
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="5dp"
        android:textSize="@dimen/textviewsize"
        android:text="@string/resulthint" />

    <TableLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:stretchColumns="0,1,2,3"
        >

        <TableRow
            android:id="@+id/tableRow1"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <Button
                android:id="@+id/num7"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="7" />

            <Button
                android:id="@+id/num8"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="8" />

            <Button
                android:id="@+id/num9"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="9" />

            <Button
                android:id="@+id/divide"
                android:layout_width="fill_parent"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="/" />
           
        </TableRow>

        <TableRow
            android:id="@+id/tableRow2"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <Button
                android:id="@+id/num4"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="4" />

            <Button
                android:id="@+id/num5"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="5" />

            <Button
                android:id="@+id/num6"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="6" />
           
            <Button
                android:id="@+id/ride"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="*" />

        </TableRow>

        <TableRow
            android:id="@+id/tableRow3"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >
               
            <Button
                android:id="@+id/num1"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="1" />

            <Button
                android:id="@+id/num2"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="2" />

            <Button
                android:id="@+id/button11"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="3" />

            <Button
                android:id="@+id/sub"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="-" />

        </TableRow>

        <TableRow
            android:id="@+id/tableRow4"
            android:layout_width="fill_parent"
            android:layout_height="wrap_content" >

            <Button
                android:id="@+id/num0"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="0" />

            <Button
                android:id="@+id/point"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="." />

            <Button
                android:id="@+id/add"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="+" />

            <Button
                android:id="@+id/equal"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:textSize="@dimen/buttonsize"
                android:text="=" />

        </TableRow>
    </TableLayout>
    <Button
                android:id="@+id/clean"
                android:layout_width="fill_parent"
                android:layout_height="fill_parent"
                android:textSize="@dimen/buttonsize"
                android:text="clean" />
   
</LinearLayout>

注:如果读者在复制时没有铺满整个屏幕,请更改

  dimens文件中要添加的两个参数。

相关内容