使用Android Studio实现简单的计算器(已亲自实验通过)

使用Android Studio实现简单的计算器(已亲自实验通过)

实验内容

用多个Activity实现分别实现加、减、乘、除的计算器,具体包括:通过一个启动Activity布置4个按钮,每个按钮分别触发加、减、乘、除的Activity;然后在打开的Activity中实现与实验一类似的页面,以一个按钮触发计算输出。

实验分析

用多个Activity实现分别实现加、减、乘、除的计算器,具体包括:通过一个启动Activity布置4个按钮,每个按钮分别触发加、减、乘、除的Activity;然后在打开的Activity中实现与实验一类似的页面,以一个按钮触发计算输出。

实验效果界面

实验步骤

  1. 创建一个新项目

  2. 编辑layout文件activity_main.xml
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical"
    tools:context=".MainActivity"
    android:background="#000000" >


    <EditText
        android:id="@+id/et_input"
        android:layout_width="match_parent"
        android:layout_height="80dp"
        android:background="@drawable/white"
        android:editable="false"
        android:paddingBottom="5dp"
        android:textSize="30sp" />

    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="30dp"
        android:orientation="horizontal"
        android:gravity="center_horizontal">

        <Button
            android:id="@+id/btn_clr"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="C"
            android:textSize="30sp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>

        <Button
            android:id="@+id/btn_del"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="⬅"
            android:textSize="30sp"
            android:layout_marginLeft="10dp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>

        <Button
            android:id="@+id/btn_div"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="÷"
            android:textSize="30sp"
            android:layout_marginLeft="10dp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>

        <Button
            android:id="@+id/btn_mul"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="×"
            android:textSize="30sp"
            android:layout_marginLeft="10dp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>
    </LinearLayout>
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:orientation="horizontal"
        android:gravity="center_horizontal"
        >
        <Button
            android:id="@+id/btn_7"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="7"
            android:textSize="30sp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>
        <Button
            android:id="@+id/btn_8"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="8"
            android:textSize="30sp"
            android:layout_marginLeft="10dp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>
        <Button
            android:id="@+id/btn_9"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="9"
            android:textSize="30sp"
            android:layout_marginLeft="10dp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector"/>
        <Button
            android:id="@+id/btn_sub"
            android:layout_width="80dp"
            android:layout_height="80dp"
            android:text="-"
            android:textSize="30sp"
            android:layout_marginLeft="10dp"
            android:paddingRight="15sp"
            android:paddingBottom="15sp"
            android:background="@drawable/selector" />
    </LinearLayout>
    <LinearLayout
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:layout_marginTop="10dp"
        android:orientation="horizontal"
        android:gravity="center_horizontal"
        >
        <Button
            android<
Android Studio实现一个简单计算器,你可以按照以下步骤操作: 1. **新建项目**:打开Android Studio,选择“Start a new Android Studio project”,选择Empty Activity模板。 2. **界面设计**:在`activity_main.xml`布局文件中,添数字按钮、运算符按钮和结果显示区域等控件。可以使用GridLayout或LinearLayout来布局。 3. **UI组件**:使用`Button`控件创建每个数字键和运算符键,并设置点击事件监听器。例如,可以为法、法、法、法等运算符分配对应的处理函数。 4. **编写逻辑**:在Activity中,创建一个`Calculator`类或者作为成员变量的`double`变量用于存储当前的输入和结果。当用户点击数字或运算符时,更新内部状态并计算结果。记得在运算之前检查数是否为0。 5. **事件处理**:在`OnClickListener`中,读取按键的文本,然后根据操作符执行相应的数学操作,如 `+` 法、 `-` 法、 `*` 法、 `/` 法。更新显示结果。 6. **错误处理**:对于非法的操作,比如以零,需要捕获异常并在界面上提供反馈,防止程序崩溃。 7. **测试**:运行应用,验证所有基本算术操作以及清和等于按钮功能是否正常工作。 ```java // 示例代码片段 public class MainActivity extends AppCompatActivity { private Calculator calculator; private Button button1; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); calculator = new Calculator(); button1 = findViewById(R.id.button1); // 假设button1对应数字1 button1.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { String buttonText = button1.getText().toString(); if (calculator.isNumber(buttonText)) { calculator.inputNumber(buttonText); } } }); } // 添其他按钮的点击事件处理... } ```
评论 99
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

_Ashore

感谢各位老板的打赏!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值