返回

一键直达!安卓野路子学习项目之Android计算器(一)——界面布局

Android

Android 计算器:从界面布局到核心功能

界面布局:Android 计算器的骨架

在智能手机领域,计算器是不可或缺的工具,而开发一个自定义计算器是一个引人入胜且有益的 Android 学习项目。本指南将带您逐步完成 Android 计算器开发,从界面布局开始,深入探讨核心功能的实现。

圆角矩形:界面设计的优雅基石

Android 中的圆角矩形是具有圆形边角的矩形,在界面设计中广泛使用。使用 ShapeDrawable 类可以轻松创建圆角矩形。以下代码创建一个半径为 10 像素的圆角矩形:

ShapeDrawable shape = new ShapeDrawable(new RoundRectShape(new float[] { 10, 10, 10, 10, 10, 10, 10, 10 }, null, null));

Android Studio:开发者的理想工具

Android Studio 是 Google 推荐的 Android 开发环境,提供全面的功能和丰富的文档。如果您尚未安装,请从官方网站下载并安装。

界面布局:用 XML 勾勒计算器

Android 的界面布局由 XML 文件定义。在 app/res/layout 文件夹中,创建一个名为 activity_main.xml 的文件。

<?xml version="1.0" encoding="utf-8"?>
<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:orientation="vertical"
              tools:context=".MainActivity">

    <TextView
        android:id="@+id/text_view"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="0"
        android:textSize="30dp"
        android:textAlignment="textEnd" />

    <LinearLayout
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:orientation="horizontal">

        <Button
            android:id="@+id/button_1"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="1" />

        <Button
            android:id="@+id/button_2"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="2" />

        <Button
            android:id="@+id/button_3"
            android:layout_width="0dp"
            android:layout_height="wrap_content"
            android:layout_weight="1"
            android:text="3" />
    </LinearLayout>
</LinearLayout>

此 XML 定义了一个简单的计算器布局,包括一个用于显示结果的文本框和三个按钮用于输入数字。

核心功能:计算的精髓

有了界面布局,我们现在深入探讨计算器的核心功能。以下代码显示了如何响应数字按钮点击并更新文本框中的结果:

Button button1 = findViewById(R.id.button_1);
button1.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        String currentValue = textView.getText().toString();
        textView.setText(currentValue + "1");
    }
});

高级功能:操作员和运算

除了数字输入,计算器还需要处理操作员和运算。我们添加更多按钮来代表加、减、乘和除,并实现相应的功能:

Button buttonAdd = findViewById(R.id.button_add);
buttonAdd.setOnClickListener(new View.OnClickListener() {
    @Override
    public void onClick(View v) {
        // 保存第一个数字和操作符
        String currentValue = textView.getText().toString();
        number1 = Double.parseDouble(currentValue);
        operation = "+";
    }
});

结论:打造完全自定义的计算器

通过逐步开发界面布局和核心功能,您现在可以创建一个完全自定义的 Android 计算器。它将满足您的计算需求,并作为您 Android 开发技能的证明。

常见问题解答

  1. 如何修改计算器的外观?

    • 自定义布局 XML 文件以调整颜色、字体和按钮大小。
  2. 如何添加更多高级功能?

    • 实现开方、百分比和存储器功能等高级操作。
  3. 如何处理错误输入?

    • 验证输入并提供用户友好的错误消息。
  4. 如何存储计算历史记录?

    • 使用数组或数据库存储和检索先前的计算。
  5. 如何优化计算器性能?

    • 使用高效的数据结构和算法来处理大数字和复杂计算。